Subscribe to RSS feed

Jan
09

(Maybe) I’ll move to…

moving

If this blog can not support well with the Admin,  maybe I’ll move to my new & may own blog. Because I have some complaints to this blog about the reliability, the bandwidth, and the accessibility. In addition, I cann’t access this blog  from outside campus.  So….let see. BTW, (maybe) I’ll move to a new place. our own place…..here.

Jan
09

Interpretation of Wireless Trace Format on NS-2

A few week ago, I was  stuck with my perl script to do post-simulation using NS-2. I though I need to understand the trace format.  After read the ns-Manual and some literature, so, here is interpretation of NS-2 trace format for wireless simulation.

  • To find the interpretation of all possible trace format when you do the
    wireless simulation, you’d better read the code of ns2 in file ns2home/trace/cmu-trace{.h, .cc}Mostly, the format would be as

    ACTION:	[s|r|D]: s -- sent, r -- received, D -- dropped
    WHEN:	the time when the action happened
    WHERE:	the node where the action happened
    LAYER:	AGT -- application,
    	RTR -- routing,
    	LL  -- link layer (ARP is done here)
    	IFQ -- outgoing packet queue (between link and mac layer)
    	MAC -- mac,
    	PHY -- physical
    flags:
    SEQNO:	the sequence number of the packet
    TYPE:	the packet type
    		cbr -- CBR data stream packet
    		DSR -- DSR routing packet (control packet generated by routing)
    		RTS -- RTS packet generated by MAC 802.11
    		ARP -- link layer ARP packet
    SIZE:	the size of packet at current layer, when packet goes down, size increases, goes up size decreases
    [a b c d]:	a -- the packet duration in mac layer header
    		b -- the mac address of destination
    		c -- the mac address of source
    		d -- the mac type of the packet body
    flags:
    [......]:	[
    		source node ip : port_number
    		destination node ip (-1 means broadcast) : port_number
    		ip header ttl
    		ip of next hop (0 means node 0 or broadcast)
    		]
    

    So we can interpret the below trace

    s 76.000000000 _98_ AGT  --- 1812 cbr 32 [0 0 0 0] ------- [98:0 0:0 32 0]
    

    as

    Application 0 (port number) on node 98 sent a CBR packet whose ID is 1812 and size is 32 bytes, at time 76.0 second, to application 0 on node 0 with TTL is 32 hops. The next hop is not decided yet.

    And we can also interpret the below trace

    r 0.010176954 _9_ RTR  --- 1 gpsr 29 [0 ffffffff 8 800] ------- [8:255 -1:255 32 0]
    

    in the same way, as

    The routing agent on node 9 received a GPSR broadcast (mac address 0xff, and ip address is -1, either of them means broadcast) routing packet
    whose ID is 1 and size is 19 bytes, at time 0.010176954 second, from node 8 (both mac and ip addresses are 8), port 255 (routing agent).

  • Dec
    30

    AODV-UI

    For my reseach project this semester, I tried to combine 2 protocols, AODV+ and R-AODV in NS-2.34. We called it AODV-UI. My goals is to combine gateway mode and reverse mode in route discovery mechanisme, so we’ve got a new variant AODV. Here the source code of aodv-ui.

    Dec
    30

    New Wireless & AODV Trace Formats

    New Wireless Trace Formats

    This information comes from “The ns Manual” (http://www.isi.edu/nsnam/ns/doc/) “Mobile Networking in ns: Revised format for wireless traces” chapter, and the “trace/cmu-trace.cc” file. Similar to the old format, in the new format wireless traces begin with one of four characters. This is followed by flag/value pairs similar to NAM traces. The first letter of flags with two letters designates the flag type:

    • N: Node Property
    • I: IP Level Packet Information
    • H: Next Hop Information
    • M: MAC Level Packet Information
    • P: Packet Specific Information
    Event Abbreviation Flag Type Value
    Wireless Event s: Send
    r: Receive
    d: Drop
    f: Forward
    -t double Time (* For Global Setting)
    -Ni int Node ID
    -Nx double Node X Coordinate
    -Ny double Node Y Coordinate
    -Nz double Node Z Coordinate
    -Ne double Node Energy Level
    -Nl string Network trace Level (AGT, RTR, MAC, etc.)
    -Nw string Drop Reason
    -Hs int Hop source node ID
    -Hd int Hop destination Node ID, -1, -2
    -Ma hexadecimal Duration
    -Ms hexadecimal Source Ethernet Address
    -Md hexadecimal Destination Ethernet Address
    -Mt hexadecimal Ethernet Type
    -P string Packet Type (arp, dsr, imep, tora, etc.)
    -Pn string Packet Type (cbr, tcp)

    Note that the value for the -Hd flag may be -1 or -2. -1 means that the packet is a broadcast packet, and -2 means that the destination node has not been set. -2 is typically seen for packets that are passed between the agent (-Nl AGT) and routing (-Nl RTR) levels.

    AODV Trace Formats

    AODV traces begin with an “A”, followed by the AODV trace. This information comes from the “aodv/aodv_logs.cc” source file.

    Event Abbreviation Type Value
    Delete Link A %.9f _%d_ deleting LL hop to %d (delete %d is %s)
    double Time
    int Index
    int Destination
    int Deleted Link Count
    string Link State (VALID, INVALID)
    Broken Link A %.9f _%d_ LL unable to deliver packet %d to %d (%d) (reason = %d, ifqlen = %d)
    double Time
    int Index
    int Unique Packet ID
    int Next Hop
    int Broken Link Count
    int Transmit Reason
    int Queue Length
    Keeping Bad Link A %.9f _%d_ keeping LL hop to %d (keep %d is %s)
    double Time
    int Index
    int Destination
    int Kept Bad Link Count
    string Link State (VALID, INVALID)

    Dec
    28

    Error message my proposed aodv

    Error message when I compiled (make) my proposed aodv in ns-2.34 on Linux Ubuntu.

    aodv/aodv.cc: In member function ‘void AODV::rt_resolve(Packet*)’:
    aodv/aodv.cc:804: error: ‘default_rt’ was not declared in this scope
    aodv/aodv.cc:733: warning: unused variable ‘rtc’
    aodv/aodv.cc:734: warning: unused variable ‘lastorder’
    aodv/aodv.cc: In member function ‘void AODV::recvAODV(Packet*)’:
    aodv/aodv.cc:1071: warning: unused variable ‘ih’
    aodv/aodv.cc: In member function ‘void AODV::recvReverse(Packet*)’:
    aodv/aodv.cc:1397: error: ‘struct hdr_aodv_reply’ has no member named ‘rp_bcast_id’
    aodv/aodv.cc:1404: error: no matching function for call to ‘AODV::id_insert(nsaddr_t&)’
    aodv/aodv.cc:371: note: candidates are: void AODV::id_insert(nsaddr_t, u_int32_t)
    aodv/aodv.cc:1419: warning: suggest parentheses around && within ||
    aodv/aodv.cc:1436: warning: array subscript has type ‘char’
    aodv/aodv.cc:1457: warning: array subscript has type ‘char’
    aodv/aodv.cc:1464: warning: suggest parentheses around assignment used as truth value
    aodv/aodv.cc:1351: warning: unused variable ‘suppress_reply’
    aodv/aodv.cc:1353: warning: unused variable ‘rtc’
    aodv/aodv.cc: At global scope:
    aodv/aodv.cc:1475: error: expected unqualified-id before ‘/’ token
    aodv/aodv.cc:1475: error: expected constructor, destructor, or type conversion before ‘/’ token
    aodv/aodv.cc:71: warning: ‘ord’ defined but not used
    make: *** [aodv/aodv.o] Error 1

    Dec
    27

    Methods and Tools

    Above is part of my survey of Ad hoc On-demand Distance Vector (AODV) routing protocols classification by methods and tools.

    Dec
    25

    Combining 2 protocols aodv

    I’m trying to combine 2 protocols in ns-2. The protocols are r-aodv and aodv+. The goals is to get a new variant of routing protocol aodv that support for interconnection between mobile ad hoc network and node in infrastructure or Internet with link management failure. Protocol aodv+ provide gateway module and r-aodv provide reverse module for route management.

    We need to modified some files, such as :

    • aodv.cc
    • aodv.h
    • aodv_packet.cc
    • aodv_packet.h
    • aodv_rtable.cc
    • aodv_rtable.h
    • cmu_trace.cc
    • ns-default.tcl

    Dec
    23

    Draft Research Roadmap

    Here is my (draft) research roadmap.

    Dec
    23

    Pemimpin yang tidak memimpin

    Memang sulit menjadi pemimpin? Bisa ya, bisa juga tidak.  Karena ada yang bilang, memimpin itu seni. Memimpin perlu banyak keahlian. Diperlukan keahlian psikologi (nah…yang satu ini sering luput dari perhatian para pemimpin), keahlian negosiasi, keahlian persuasif, keahlian mempengaruhi orang, keahlian berpidato, keahlian melihat masa depan, keahlian berfikir global, keahlian memahami karakter, dan lain sebagainya. Bangsa kita ini memang sedang krisis kepemimpinan hampir disegala aspek.

    Saat ini kebanyakan orang yang dipundaknya terdapat pangkat atau jabatan alias pemimpin, tetapi pekerjaannya bukan memimpin. Lalu apa yang dikerjakan oleh pemimpin saat ini? Lihat saja di televisi, baca koran & internet, dengar aja di radio…..pasti bisa kita ketahui apa yg diperbuat.

    Yang selalu menjadi korban dari kepemimpinan adalah bahawan atau rakyat. Jadi sebagai rakyat, siap-siaplah menjadi korban para pemimpin yang tidak memimpin. Pemimpin yang seolah-olah memimpin.

    Dec
    19

    Research Position

    Here is my PhD research position.

    Abdusy Research Position

    Older posts «

    Lowongan | Berita | Pendaftaran | Kelas Karyawan | Website | Warta | Promo

    Secured for spam by MLW and Associates, LLP's Super CAPTCHASecured by Super-CAPTCHA © 2009-2010 MLW & Associates, LLP. All rights reserved.