[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Helps again on DSR unicasting



Hello,
   
  My name is Jason Xie, an intern student in the BellCore. I am building
an application which uses the unicast facility in DSR.  For the past days,
I have not been able to do so.

  That was the time I stripped off all my codes, and tested unicast with
the entire original source package from the CMU distribution
(cmu-extendedns-1.1.0.tar.gz). The unicast is still NOT working.

  My test is followings:

    following the commands in cmu-docs/ns-cmu.ps, I issued:

        ./ns cmu/scripts/run.tcl -rp cmu/dsr/dsr.tcl
             -x 1500 -y 300
             -cp scen/cbr-50-20-4-512 -sc scen/scen-1500x300-50-0-20-1
             -stop 900 -tr out.tr

         (where ALL scripts and scenario files are unmodified and ALL
          are from the cmu-extendedns-1.1.0.tar.gz distribution)

    for testing purpose, 

    1) I added a printf statement in cbr.cc file.namely, adding a prinf
       statement to see the contents (rh->seqno()) of the packets in
       CBR_Agent::sendpkt() function. 
      
    2) I added a printf statement in dsragent.cc file to see the if the
       packets coming out of the DSR layer in the destination node, and
       also to see if the contents (rh->seqno()) remains the same. This
       printf statement is added in DSRAgent::recv(...) function. (of
       course, I included appropriate header files and offset variable
       first)
     
    RESULT:

       In the destination node DSR layer, the contents are not able to 
       be retrieved.

    ANALYSIS:

       by reading the out.tr trace file, I notice that:
       
       1) router discovery is trigged when CBR injects data packets to
          DSR. The router discovery is propogating to the destination
          node.

       2) the destination node tries to respond back to the originating
          node.
 
       3) from this point on, it triggers a serial of ARP requests. The
          ARP requests keep cascading throughout the network with no end. 

   A brief portion of the out.tr file is attached.
   
   I installed the ns2 and cmu extensions on SunOS 5.7 with SunUltraSPARC
processors. And in order to compile the cmu distribution on this 
environment, I replaced function "ETHER_ADDR(dh->dh_da)" with 
"STORE4BYTE(&dst, (dh->dh_da))" in file mac-802_11.cc and file
mac-802_3.cc as the standard UCB ns-2.1b5 distribution did.
    
  I would be greately appreciate if you could provide insights of the 
problem. Thank you so much!

jason

the scenario is :   set cbr_(0) [$ns_ create-connection  CBR $node_(1) CBR $node_(2) 0]
                    $cbr_(0) set packetSize_ 512
                    $cbr_(0) set interval_ 0.25
                    $cbr_(0) set random_ 1
                    $cbr_(0) set maxpkts_ 10000
                    $ns_ at 176.709 "$cbr_(0) start"

s 176.709000000 _1_ AGT  --- 0 cbr 512 [0 0 0 0 0] ------- [1:0 2:0 32 0] [0] 0 1

r 176.709000000 _1_ RTR  --- 0 cbr 512 [0 0 0 0 0] ------- [1:0 2:0 32 0] [0] 0 1

SRR 176.70900 _1_ new-request 0 1 #1 -> 2

s 176.716664948 _1_ RTR  --- 1 DSR 24 [0 0 0 0 0] ------- [1:255 2:255 32 0] 1 [1 1 0] [0 1 0 0->0] [0 0 0 0->0]

r 176.717082818 _6_ RTR  --- 1 DSR 24 [800 0 ffffffff 1 0] ------- [1:255 2:255 32 0] 1 [1 1 0] [0 1 0 0->0] [0 0 0
0 0->0]


... keep doing route discovery ...


SRR 176.717105243 _2_ reply-sent 2 -> 1 #1 (len 2) [(1) 2 ]

SF 176.726515042 _2_ --- 2 [2 -> 1] [|2 1 ]

s 176.726515042 _2_ RTR  --- 2 DSR 36 [0 0 0 0 0] ------- [2:255 1:255 255 1] 2 [0 1 0] [1 1 2 1->2] [0 0 0 0->0]

r 176.726915731 _30_ RTR  --- 0 ARP 28 [800 0 ffffffff 2 0] ------- [REQUEST 2/2 0/1]

SRR 176.72692 _30_ new-request 0 30 #1 -> 0

r 176.726918390 _18_ RTR  --- 0 ARP 28 [800 0 ffffffff 2 0] ------- [REQUEST 2/2 0/1]

SRR 176.72692 _18_ new-request 0 18 #1 -> 0

r 176.726921415 _4_ RTR  --- 0 ARP 28 [800 0 ffffffff 2 0] ------- [REQUEST 2/2 0/1]


... keep cascading ARPing ...



SRR 176.72694 _9_ new-request 0 9 #1 -> 0

r 176.726937792 _42_ RTR  --- 0 ARP 28 [800 0 ffffffff 2 0] ------- [REQUEST 2/2 0/1]

s 176.726967788 _42_ RTR  --- 24 DSR 24 [0 0 0 0 0] ------- [42:255 0:255 32 0] 1 [1 1 0] [0 1 0 0->0] [0 0 0
0->0]

s 176.727256539 _1_ RTR  --- 9 DSR 24 [0 0 0 0 0] ------- [1:255 0:255 32 0] 1 [1 2 0] [0 2 0 0->0] [0 0 0 0->0]

...