<?xml version='1.0' encoding='UTF-8'?><?xml-stylesheet href="http://www.blogger.com/styles/atom.css" type="text/css"?><feed xmlns='http://www.w3.org/2005/Atom' xmlns:openSearch='http://a9.com/-/spec/opensearchrss/1.0/' xmlns:georss='http://www.georss.org/georss' xmlns:gd='http://schemas.google.com/g/2005' xmlns:thr='http://purl.org/syndication/thread/1.0'><id>tag:blogger.com,1999:blog-5238991662990421610</id><updated>2011-04-21T10:56:48.546-07:00</updated><title type='text'>Network Simulator</title><subtitle type='html'></subtitle><link rel='http://schemas.google.com/g/2005#feed' type='application/atom+xml' href='http://ns-3.blogspot.com/feeds/posts/default'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5238991662990421610/posts/default?max-results=100'/><link rel='alternate' type='text/html' href='http://ns-3.blogspot.com/'/><link rel='hub' href='http://pubsubhubbub.appspot.com/'/><author><name>SONG</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><generator version='7.00' uri='http://www.blogger.com'>Blogger</generator><openSearch:totalResults>11</openSearch:totalResults><openSearch:startIndex>1</openSearch:startIndex><openSearch:itemsPerPage>100</openSearch:itemsPerPage><entry><id>tag:blogger.com,1999:blog-5238991662990421610.post-1361294461454729294</id><published>2009-01-15T12:41:00.001-08:00</published><updated>2009-01-26T08:25:39.573-08:00</updated><title type='text'>ns2: How to change physical interface properties after the node is created</title><content type='html'>&lt;div xmlns="http://www.w3.org/1999/xhtml"&gt;In my previous post, I verified a way to install wireless interfaces with different physical properties on ns2 nodes. However, in that scenario, we assumed that all nodes have only one interface.&lt;br /&gt;&lt;br /&gt;Recently, I have to work on scenarios which require multiple wireless interfaces on one node. Furthermore, it is possible that those interfaces on the same node may have different physical properties (e.g., different Rx and CS thresholds). I have accomplished install more than one wireless interfaces on one node, using &lt;a href="http://personales.unican.es/aguerocr/"&gt;Ramon's method&lt;/a&gt;. However, the previous approach of changing configurations of individual interface does not work any more. This is because it changes the default configurations for all wireless interface before the node is created, and ns2 set the properties of all its interfaces using those default values when it adds interfaces onto itself.&lt;br /&gt;&lt;br /&gt;To solve these problem, we need to way to manipulate any individual interface and change its configurations after the node is created. The following gives the solution:&lt;br /&gt;&lt;br /&gt;1. At the beginning of your ns2 script, create a new function:&lt;br /&gt;&lt;br /&gt;Node/MobileNode instproc getPhy {ifa } {&lt;br /&gt;    $self instvar netif_&lt;br /&gt;    return $netif_($ifa)&lt;br /&gt;}&lt;br /&gt;&lt;br /&gt;where ifa is the index of the interface.&lt;br /&gt;&lt;br /&gt;2. After node is created, we can use this function to get the interface object.&lt;br /&gt;&lt;br /&gt;3. Because ns2 already binds some member variables of class WirelessPhy, we use the interface object obtained from step 2 to set those binded variables directly.&lt;br /&gt;&lt;br /&gt;Following is a snippet from my script:&lt;br /&gt;--------------------------------------------------------------------&lt;br /&gt;$ns change-numifs 1&lt;br /&gt;$ns add-channel 0 $chan_(0)&lt;br /&gt;#$ns add-channel 1 $chan_(1)&lt;br /&gt;&lt;br /&gt;set node_(0) [$ns node]&lt;br /&gt;$node_(0) set X_ 0.0&lt;br /&gt;$node_(0) set Y_ 0.0&lt;br /&gt;$node_(0) set Z_ 0.0&lt;br /&gt;set phy [$node_(0) getPhy 0]&lt;br /&gt;$phy set RXThresh_ 1.08918e-9 ;#FreeSpace, 160m&lt;br /&gt;&lt;br /&gt;$ns change-numifs 2&lt;br /&gt;$ns add-channel 0 $chan_(0)&lt;br /&gt;$ns add-channel 1 $chan_(1)&lt;br /&gt;&lt;br /&gt;set node_(1) [$ns node]&lt;br /&gt;$node_(1) set X_ 150.0&lt;br /&gt;$node_(1) set Y_ 0.0&lt;br /&gt;$node_(1) set Z_ 0.0&lt;br /&gt;set phy [$node_(1) getPhy 0]&lt;br /&gt;$phy set RXThresh_ 1.08918e-9 ;#FreeSpace, 160m&lt;br /&gt;set phy [$node_(1) getPhy 1]&lt;br /&gt;$phy set RXThresh_ 4.4613e-10    ;#250m&lt;br /&gt;&lt;br /&gt;$ns change-numifs 1&lt;br /&gt;$ns add-channel 0 $chan_(1)&lt;br /&gt;#$ns add-channel 1 $chan_(1)&lt;br /&gt;&lt;br /&gt;set node_(2) [$ns node]&lt;br /&gt;$node_(2) set X_ 350.0&lt;br /&gt;$node_(2) set Y_ 0.0&lt;br /&gt;$node_(2) set Z_ 0.0&lt;br /&gt;set phy [$node_(2) getPhy 0]&lt;br /&gt;$phy set RXThresh_ 4.4613e-10    ;#250m&lt;br /&gt;&lt;br /&gt;--------------------------------------------------------------------&lt;br /&gt;&lt;br /&gt;The first three lines specify that two interfaces will be installed on node 1. After node 1 is created, we got the second interface object through function getPhy, and changed its Rx threshold. Note that we did not change configurations for the 1st interface (indexed as 0) and it uses default values.&lt;br /&gt;&lt;br /&gt;Now, we need to verify that this approach is working. We place three nodes in the testing topology. Node 0 installed one interface which connects to channel 0, the transmission range is 160m. Node 1 installed two interfaces: the first interface connects to channel 0 and it also has a 160m transmission range; the second interface connects to channel 1 and has 250m transmission range. Node 2 has only one interface, and it connects to channel 1 with transmission range of 250m. The default transmission range is set to 160m.&lt;br /&gt;&lt;br /&gt;We set up a cbr flow from node 0 to node 2, and 100 packets will be sent. If all interface has the same default transmission range, the flow will not succeed.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;table style="width:auto;"&gt;&lt;tr&gt;&lt;td&gt;&lt;a href="http://picasaweb.google.com/lh/photo/meCqhehjDagMs54lA5j_LQ?feat=embedwebsite"&gt;&lt;img src="http://lh5.ggpht.com/_le6akbA6-uw/SX3jXGT7fAI/AAAAAAAAACk/e245YRfx6Kc/s400/validation-test-4.jpg" /&gt;&lt;/a&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="font-family:arial,sans-serif; font-size:11px; text-align:right"&gt;From &lt;a href="http://picasaweb.google.com/sluons/Public?feat=embedwebsite"&gt;public&lt;/a&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;br /&gt;&lt;br /&gt;Simulation result shows that the flow did success. Here is some statistics:&lt;br /&gt;&lt;br /&gt;        sentPkts:  100&lt;br /&gt;    receivedPkts:  100&lt;br /&gt;     droppedPkts:  0&lt;br /&gt;   firstSendTime:  1&lt;br /&gt;    lastRecvTime:  1.82209&lt;br /&gt;         pktSize:  512&lt;br /&gt;   avgThroughput:  498244&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;node 0 sent 100 packets.&lt;br /&gt;node 2 received 100 packets.&lt;br /&gt;&lt;br /&gt;We also increased the distance between node 0 and node 1 to 200m, and keep the distance between node 1 and node 2 as 200m, and did the experiment again. This time, no packet was delivered to node 2.&lt;br /&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5238991662990421610-1361294461454729294?l=ns-3.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://ns-3.blogspot.com/feeds/1361294461454729294/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=5238991662990421610&amp;postID=1361294461454729294' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5238991662990421610/posts/default/1361294461454729294'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5238991662990421610/posts/default/1361294461454729294'/><link rel='alternate' type='text/html' href='http://ns-3.blogspot.com/2009/01/ns2-how-to-change-physical-interface.html' title='ns2: How to change physical interface properties after the node is created'/><author><name>SONG</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://lh5.ggpht.com/_le6akbA6-uw/SX3jXGT7fAI/AAAAAAAAACk/e245YRfx6Kc/s72-c/validation-test-4.jpg' height='72' width='72'/><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5238991662990421610.post-924587035117685085</id><published>2008-04-01T14:37:00.001-07:00</published><updated>2008-04-01T14:37:37.639-07:00</updated><title type='text'>get a reference to node at MAC layer</title><content type='html'>&lt;div xmlns='http://www.w3.org/1999/xhtml'&gt;The mac layer itself does not have a data or function member to return the node object. However, it has an reference to its physical interface, which can access the node object. My code to access node object in mac-802_11.cc is &lt;br/&gt;&lt;br/&gt;    ((WirelessPhy*)netif_)-&amp;amp;gt;node();&lt;br/&gt;&lt;br/&gt;&lt;br/&gt;&lt;p class='poweredbyperformancing'&gt;Powered by &lt;a href='http://scribefire.com/'&gt;ScribeFire&lt;/a&gt;.&lt;/p&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5238991662990421610-924587035117685085?l=ns-3.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://ns-3.blogspot.com/feeds/924587035117685085/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=5238991662990421610&amp;postID=924587035117685085' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5238991662990421610/posts/default/924587035117685085'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5238991662990421610/posts/default/924587035117685085'/><link rel='alternate' type='text/html' href='http://ns-3.blogspot.com/2008/04/get-reference-to-node-at-mac-layer.html' title='get a reference to node at MAC layer'/><author><name>SONG</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5238991662990421610.post-4634253088955613302</id><published>2008-04-01T14:31:00.001-07:00</published><updated>2008-04-01T14:31:14.275-07:00</updated><title type='text'>get a reference to node at wireless physical layer</title><content type='html'>&lt;div xmlns='http://www.w3.org/1999/xhtml'&gt;Both Class wirelessPhy and Phy provide a function to access its protected member node_, which refers to its node object. For example, if one wants to know the node id in the physical layer, use the following command:&lt;br/&gt;&lt;br/&gt;    node()-&amp;amp;gt;nodeid(), which returns an integer.&lt;br/&gt;&lt;br/&gt;&lt;br/&gt;&lt;p class='poweredbyperformancing'&gt;Powered by &lt;a href='http://scribefire.com/'&gt;ScribeFire&lt;/a&gt;.&lt;/p&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5238991662990421610-4634253088955613302?l=ns-3.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://ns-3.blogspot.com/feeds/4634253088955613302/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=5238991662990421610&amp;postID=4634253088955613302' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5238991662990421610/posts/default/4634253088955613302'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5238991662990421610/posts/default/4634253088955613302'/><link rel='alternate' type='text/html' href='http://ns-3.blogspot.com/2008/04/get-reference-to-node-at-wireless.html' title='get a reference to node at wireless physical layer'/><author><name>SONG</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5238991662990421610.post-842386051155514731</id><published>2008-04-01T10:19:00.001-07:00</published><updated>2008-04-01T10:26:39.607-07:00</updated><title type='text'>ns-2.33 added new mac models</title><content type='html'>&lt;div xmlns='http://www.w3.org/1999/xhtml'&gt;Today, a new version of ns (2.33) has been announced. Several new 802.11 models has been added into this version, which is an exciting news. Here is a summary of these new models:&lt;br/&gt;&lt;br/&gt;&lt;ul&gt;&lt;li&gt;802.11 infrastructure extensions:&lt;/li&gt;&lt;/ul&gt;Support AP, and inter-AP communications, and handoff. (&lt;a href='http://ee.washington.edu/research/funlab/802_11/report_80211_IM.pdf'&gt;http://ee.washington.edu/research/funlab/802_11/report_80211_IM.pdf&lt;/a&gt;)&lt;br/&gt;&lt;br/&gt;&lt;ul&gt;&lt;li&gt;802.11 Ext        &lt;/li&gt;&lt;/ul&gt;Mercedes-Benz R&amp;amp;D contributed to this model (I am surprised to know Mercededes-Benz is also interested in network simulation). Neat function structure design, more accurate SINR computation, physical layer tracing, Nakagami fading model. In short, it should be a better choice for general 802.11 simulation. The ns doc says "The model should be used as a replacement for the existing models". (&lt;a href='http://dsn.tm.uni-karlsruhe.de/Overhaul_NS-2.php'&gt;http://dsn.tm.uni-karlsruhe.de/Overhaul_NS-2.php&lt;/a&gt;)&lt;br/&gt;&lt;br/&gt;&lt;ul&gt;&lt;li&gt;dei802.11 mr&lt;/li&gt;&lt;/ul&gt;Multirate 802.11 module. Users are now supposed to be able to use different transmission rates, modulation and coding schemes. There's no RxThresh and CSThresh in this model. The packet reception is determined by a pre-defined PER-SINR curve. Users with such curve will be happy to use this model. (&lt;a href='http://www.dei.unipd.it/%7Ebaldo/nsmiracle-dei80211mr-howto.html'&gt;http://www.dei.unipd.it/%7Ebaldo/nsmiracle-dei80211mr-howto.html).&lt;/a&gt;&lt;br/&gt;&lt;br/&gt;&lt;br/&gt;Also, from version 2.33, ns2 supports dynamical library, which means users don't need to touch the core source of ns to implement their own models. Cheers!&lt;br/&gt;&lt;br/&gt;The original description of 802.11 from ns doc can be found from &lt;a href='http://www.isi.edu/nsnam/ns/doc/node193.html#sec:802_11'&gt;http://www.isi.edu/nsnam/ns/doc/node193.html#sec:802_11&lt;/a&gt;&lt;br/&gt;&lt;br/&gt;&lt;p class='poweredbyperformancing'&gt;Powered by &lt;a href='http://scribefire.com/'&gt;ScribeFire&lt;/a&gt;.&lt;/p&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5238991662990421610-842386051155514731?l=ns-3.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://ns-3.blogspot.com/feeds/842386051155514731/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=5238991662990421610&amp;postID=842386051155514731' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5238991662990421610/posts/default/842386051155514731'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5238991662990421610/posts/default/842386051155514731'/><link rel='alternate' type='text/html' href='http://ns-3.blogspot.com/2008/04/ns-233-added-new-mac-models.html' title='ns-2.33 added new mac models'/><author><name>SONG</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5238991662990421610.post-5569326120766723458</id><published>2008-01-14T13:14:00.001-08:00</published><updated>2008-12-19T08:35:05.899-08:00</updated><title type='text'>Using different transmission ranges in one simulation</title><content type='html'>&lt;div xmlns="http://www.w3.org/1999/xhtml"&gt;From my discussions with Muhamad on ns2 mail list, he provided a solution to use different transmission ranges in one ns2 wireless simulation. To verify this solution, I created a simple scenario and a test script, and let ns2 run it. The results was good: I observed the effect of different transmission range.&lt;br /&gt;&lt;br /&gt;The scenario is as follows. Two wireless nodes n0 and n1 are placed into a flat area and have distance of 200m. Both nodes send packets with the same transmission power, but have different receiving range. I set n0's receiving range to 250m, and its carrier sensing range to 550m. n1's receiving range is 160m, and its carrier sensing range is 400m.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://picasaweb.google.com/sluons/Public/photo#5155432745511673730"&gt;&lt;img src="http://lh3.google.com/sluons/R4vGxHOj34I/AAAAAAAAABk/8mBYl06wUcU/s400/diff-xrange.jpg" /&gt;&lt;/a&gt;&lt;br /&gt;Both nodes try to send exactly one packet to the other using DSR. Because there is no bi-directional connection exist, the actual data connection could not be be established (DSR needs a bi-directional connection for route discovery). However, we can verify the difference of two transmission ranges by observing the reachability of DSR RREQ packets broadcast by each node.&lt;br /&gt;&lt;br /&gt;The first connection starts at the 1st second, from n0 to n1. The second connection starts at the 5th second, from n1 to n0. By analyzing the trace file, I found that the all RREQ packets from n0 were not heard by n1. But all RREQ packets sent by n1 were successfully received by n0. This makes sense because n1's receiving ranges (160m) is samller than its distance to n0 (200m), thus it cannot heard any packet from n0. However, because n0's receiving range (250m) is bigger than the distance, it can hear RREQ from n1. n0 also sent out replies to n1, but n1 could not heard it.&lt;br /&gt;&lt;br /&gt;The tcl script:&lt;br /&gt;-----------------------------------&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;# n0 and n1 use the same transmission power.&lt;br /&gt;# n0 has a receiving range of 250m, n1's receiving range is 160m.&lt;br /&gt;# n0 and n1 are 200m away from each other.&lt;br /&gt;# n1 cannot receive routing requests broadcast by n0;&lt;br /&gt;# however, n0 can receive routing requests broadcast by n1.&lt;br /&gt;&lt;br /&gt;# ==========================================================&lt;br /&gt;#Definition&lt;br /&gt;# ==========================================================&lt;br /&gt;set opt(chan) Channel/WirelessChannel  ;# channel type&lt;br /&gt;set opt(prop) Propagation/FreeSpace    ;# radio-propagation&lt;br /&gt;set opt(ant)  Antenna/OmniAntenna      ;# Antenna type&lt;br /&gt;set opt(ll)   LL                       ;# Link layer type&lt;br /&gt;set opt(ifq)  CMUPriQueue                ;# Interface queue&lt;br /&gt;set opt(ifqlen) 100                    ;# max packet in ifq&lt;br /&gt;set opt(netif)  Phy/WirelessPhy        ;# network interface&lt;br /&gt;set opt(mac)    Mac/802_11             ;# MAC type&lt;br /&gt;set opt(nn)     2                      ;# number of mobilenodes&lt;br /&gt;set opt(rp)     DSR                    ;# routing protocol&lt;br /&gt;set opt(x)            1000&lt;br /&gt;set opt(y)            1000&lt;br /&gt;set opt(seed)         0.0&lt;br /&gt;set opt(stop)         10.0&lt;br /&gt;&lt;br /&gt;# ==========================================================&lt;br /&gt;# Initialize Global Variables&lt;br /&gt;# ==========================================================&lt;br /&gt; set ns [new Simulator]&lt;br /&gt;&lt;br /&gt; $ns use-newtrace&lt;br /&gt; set trace [open out.tr w]&lt;br /&gt; $ns trace-all $trace&lt;br /&gt;&lt;br /&gt; set namtrace [open out.nam w]&lt;br /&gt; $ns namtrace-all-wireless $namtrace $opt(x) $opt(y)&lt;br /&gt;&lt;br /&gt;# ==========================================================&lt;br /&gt;# set up topography object&lt;br /&gt;# ==========================================================&lt;br /&gt; set topo [new Topography]&lt;br /&gt; $topo load_flatgrid $opt(x) $opt(y)&lt;br /&gt;&lt;br /&gt;# ==========================================================&lt;br /&gt;# Create God --&amp;amp;gt; General Operations Director&lt;br /&gt;# ==========================================================&lt;br /&gt; create-god $opt(nn)&lt;br /&gt;&lt;br /&gt;# ==========================================================&lt;br /&gt;# Create channel (koneksi wireless)&lt;br /&gt;# ==========================================================&lt;br /&gt;set chan_1 [new $opt(chan)]&lt;br /&gt;&lt;br /&gt;# ==========================================================&lt;br /&gt;# configure and create nodes&lt;br /&gt;# ==========================================================&lt;br /&gt;$ns node-config  -addressType expanded \&lt;br /&gt;                 -adhocRouting $opt(rp) \&lt;br /&gt;                 -llType $opt(ll) \&lt;br /&gt;                 -macType $opt(mac) \&lt;br /&gt;                 -ifqType $opt(ifq) \&lt;br /&gt;                 -ifqLen $opt(ifqlen) \&lt;br /&gt;                 -antType $opt(ant) \&lt;br /&gt;                 -propType $opt(prop) \&lt;br /&gt;                 -phyType $opt(netif) \&lt;br /&gt;                 -topoInstance $topo \&lt;br /&gt;                 -agentTrace ON \&lt;br /&gt;                 -routerTrace ON \&lt;br /&gt;                 -macTrace OFF \&lt;br /&gt;                 -movementTrace OFF \&lt;br /&gt;                 -channel $chan_1&lt;br /&gt;   &lt;br /&gt;                      &lt;br /&gt;# ====================================================================&lt;br /&gt;# create node 0， receiving range 250m, carrier sensing range 500m&lt;br /&gt;# ====================================================================&lt;br /&gt;   &lt;br /&gt;Phy/WirelessPhy set CPThresh_ 10.0&lt;br /&gt;Phy/WirelessPhy set CSThresh_ 9.21756e-11   ;#550m&lt;br /&gt;Phy/WirelessPhy set RXThresh_ 4.4613e-10    ;#250m&lt;br /&gt;Phy/WirelessPhy set bandwidth_ 512kb&lt;br /&gt;Phy/WirelessPhy set Pt_ 0.2818&lt;br /&gt;Phy/WirelessPhy set freq_ 2.4e+9&lt;br /&gt;Phy/WirelessPhy set L_ 1.0   &lt;br /&gt;Antenna/OmniAntenna set X_ 0&lt;br /&gt;Antenna/OmniAntenna set Y_ 0&lt;br /&gt;Antenna/OmniAntenna set Z_ 0.25&lt;br /&gt;Antenna/OmniAntenna set Gt_ 1&lt;br /&gt;Antenna/OmniAntenna set Gr_ 1&lt;br /&gt;set node_(0) [$ns node]&lt;br /&gt;$node_(0) random-motion 0&lt;br /&gt;&lt;br /&gt;$node_(0) set X_ 0.0&lt;br /&gt;$node_(0) set Y_ 0.0&lt;br /&gt;$node_(0) set Z_ 0.0&lt;br /&gt;&lt;br /&gt;# ===================================================================&lt;br /&gt;# create node 1, receiving range 160m, carrier sensing range 400m   &lt;br /&gt;# ===================================================================&lt;br /&gt;&lt;br /&gt;Phy/WirelessPhy set CPThresh_ 10.0&lt;br /&gt;Phy/WirelessPhy set CSThresh_ 1.74269e-10   ;#400m&lt;br /&gt;Phy/WirelessPhy set RXThresh_ 1.08918e-9    ;#160m&lt;br /&gt;Phy/WirelessPhy set bandwidth_ 512kb&lt;br /&gt;Phy/WirelessPhy set Pt_ 0.2818&lt;br /&gt;Phy/WirelessPhy set freq_ 2.4e+9&lt;br /&gt;Phy/WirelessPhy set L_ 1.0   &lt;br /&gt;Antenna/OmniAntenna set X_ 0&lt;br /&gt;Antenna/OmniAntenna set Y_ 0&lt;br /&gt;Antenna/OmniAntenna set Z_ 0.25&lt;br /&gt;Antenna/OmniAntenna set Gt_ 1&lt;br /&gt;Antenna/OmniAntenna set Gr_ 1&lt;br /&gt;set node_(1) [$ns node]&lt;br /&gt;$node_(1) random-motion 0&lt;br /&gt;&lt;br /&gt;$node_(1) set X_ 200.0&lt;br /&gt;$node_(1) set Y_ 0.0&lt;br /&gt;$node_(1) set Z_ 0.0&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;# UDP connections between from node_(0) to node_(1)&lt;br /&gt;&lt;br /&gt;set udp_(0) [new Agent/UDP]&lt;br /&gt;$ns attach-agent $node_(0) $udp_(0)&lt;br /&gt;$udp_(0) set fid_ 1&lt;br /&gt;set null_(0) [new Agent/Null]&lt;br /&gt;$ns attach-agent $node_(1) $null_(0)&lt;br /&gt;set cbr_(0) [new Application/Traffic/CBR]&lt;br /&gt;$cbr_(0) set packetSize_ 512&lt;br /&gt;$cbr_(0) set rate_ 200kb&lt;br /&gt;$cbr_(0) set maxpkts_ 1&lt;br /&gt;$cbr_(0) attach-agent $udp_(0)&lt;br /&gt;$ns connect $udp_(0) $null_(0)&lt;br /&gt;$ns at 1.0 "$cbr_(0) start"&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;set udp_(4) [new Agent/UDP]&lt;br /&gt;$ns attach-agent $node_(1) $udp_(4)&lt;br /&gt;$udp_(4) set fid_ 2&lt;br /&gt;set null_(4) [new Agent/Null]&lt;br /&gt;$ns attach-agent $node_(0) $null_(4)&lt;br /&gt;set cbr_(4) [new Application/Traffic/CBR]&lt;br /&gt;$cbr_(4) set packetSize_ 512&lt;br /&gt;$cbr_(4) set rate_ 200kb&lt;br /&gt;$cbr_(4) set maxpkts_ 1&lt;br /&gt;$cbr_(4) attach-agent $udp_(4)&lt;br /&gt;$ns connect $udp_(4) $null_(4)&lt;br /&gt;$ns at 5.0 "$cbr_(4) start"&lt;br /&gt;&lt;br /&gt;$ns at $opt(stop).0002 "puts \"ns EXITING...\" ; $ns halt"&lt;br /&gt;$ns at $opt(stop).0001 "finish"&lt;br /&gt;&lt;br /&gt;proc finish {} {&lt;br /&gt;  &lt;br /&gt;   $ns flush-trace&lt;br /&gt;   close $tracefd&lt;br /&gt;   close $namtrace&lt;br /&gt;   exit 0&lt;br /&gt;}&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;puts "Starting Simulation..."&lt;br /&gt;$ns run&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;p class="poweredbyperformancing"&gt;Powered by &lt;a href="http://scribefire.com/"&gt;ScribeFire&lt;/a&gt;.&lt;/p&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5238991662990421610-5569326120766723458?l=ns-3.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://ns-3.blogspot.com/feeds/5569326120766723458/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=5238991662990421610&amp;postID=5569326120766723458' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5238991662990421610/posts/default/5569326120766723458'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5238991662990421610/posts/default/5569326120766723458'/><link rel='alternate' type='text/html' href='http://ns-3.blogspot.com/2008/01/using-different-transmission-ranges-in_14.html' title='Using different transmission ranges in one simulation'/><author><name>SONG</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5238991662990421610.post-3853304931910304073</id><published>2008-01-03T11:43:00.001-08:00</published><updated>2008-01-03T11:43:37.349-08:00</updated><title type='text'>Simulation involving both wired and wireless networks</title><content type='html'>&lt;div xmlns='http://www.w3.org/1999/xhtml'&gt;NS2 document has a chapter (16.2) to describe the basice idea and indicates where to find an example (ns2/tcl/ex/wired-cum-wireless-sim.tcl). But the chapter is too brief and the example script is hard to understand.&lt;br/&gt;&lt;br/&gt;Marc Greis gives a good tutorial at &lt;a href='http://www.isi.edu/nsnam/ns/tutorial/'&gt;http://www.isi.edu/nsnam/ns/tutorial/.&lt;/a&gt;&lt;br/&gt;&lt;br/&gt;&lt;br/&gt;&lt;br/&gt;&lt;br/&gt;&lt;p class='poweredbyperformancing'&gt;Powered by &lt;a href='http://scribefire.com/'&gt;ScribeFire&lt;/a&gt;.&lt;/p&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5238991662990421610-3853304931910304073?l=ns-3.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://ns-3.blogspot.com/feeds/3853304931910304073/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=5238991662990421610&amp;postID=3853304931910304073' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5238991662990421610/posts/default/3853304931910304073'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5238991662990421610/posts/default/3853304931910304073'/><link rel='alternate' type='text/html' href='http://ns-3.blogspot.com/2008/01/simulation-involving-both-wired-and.html' title='Simulation involving both wired and wireless networks'/><author><name>SONG</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5238991662990421610.post-794657085665341282</id><published>2008-01-03T08:24:00.001-08:00</published><updated>2008-01-03T08:24:46.878-08:00</updated><title type='text'>A more discussion about RXThresh_ and CSThresh_</title><content type='html'>&lt;div xmlns='http://www.w3.org/1999/xhtml'&gt;&lt;a href='http://mailman.isi.edu/pipermail/ns-users/2004-June/043128.html'&gt;http://mailman.isi.edu/pipermail/ns-users/2004-June/043128.html&lt;/a&gt;&lt;br/&gt;&lt;br/&gt;&lt;p class='poweredbyperformancing'&gt;Powered by &lt;a href='http://scribefire.com/'&gt;ScribeFire&lt;/a&gt;.&lt;/p&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5238991662990421610-794657085665341282?l=ns-3.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://ns-3.blogspot.com/feeds/794657085665341282/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=5238991662990421610&amp;postID=794657085665341282' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5238991662990421610/posts/default/794657085665341282'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5238991662990421610/posts/default/794657085665341282'/><link rel='alternate' type='text/html' href='http://ns-3.blogspot.com/2008/01/more-discussion-about-rxthresh-and.html' title='A more discussion about RXThresh_ and CSThresh_'/><author><name>SONG</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5238991662990421610.post-8756034567894464228</id><published>2008-01-01T19:32:00.001-08:00</published><updated>2008-01-01T19:32:19.349-08:00</updated><title type='text'>ns2 radio propagation models</title><content type='html'>&lt;div xmlns='http://www.w3.org/1999/xhtml'&gt;&lt;span class='highlightedSearchTerm'&gt;ns2&lt;/span&gt; radio propagation models&lt;br /&gt;&lt;br/&gt;&lt;br/&gt;&lt;span class='highlightedSearchTerm'&gt;ns2&lt;/span&gt; implements&lt;br /&gt;three different propagation models to simulate the wireless channel:&lt;br /&gt;the Free space model, the Two-ray ground model and the Shadowing model.&lt;br /&gt;&lt;br/&gt;The propagation models are used to compute the received power.&lt;br /&gt;When a packet is received, the propagation model determines the&lt;br /&gt;attenuation between transmitter and receiver and computes the received&lt;br /&gt;signal strength. If the signal strength is lower than the Carrier&lt;br /&gt;Sensing Threshold, CSThresh_, the packet is discarded by the physical&lt;br /&gt;layer. This threshold simulates the effect of the receiver sensibility.&lt;br /&gt;&lt;br/&gt;If the level is higher than this threshold, the signal strength is&lt;br /&gt;then compared with the receiver threshold, RxThresh_. This threshold&lt;br /&gt;determines if the packet is received successfully or with errors; in&lt;br /&gt;the first case the packet is passed to the MAC layer, in the second&lt;br /&gt;case the packet is marked as erroneous and passed to the MAC layer that&lt;br /&gt;will provide to discard it.&lt;br /&gt;&lt;br/&gt;Erroneous packets are delivered to the MAC layer so that it can&lt;br /&gt;detect a packet collision where multi-packets are received&lt;br /&gt;simultaneously. In this case the MAC layer determines the ratio between&lt;br /&gt;the strongest received signal strength and the sum of the other signal&lt;br /&gt;levels. The ratio is then compared with the &lt;span class='highlightedSearchTerm'&gt;CPThresh_&lt;/span&gt; threshold that determines if the packet has been destroyed by a collision or it captured the channel.&lt;br /&gt;&lt;br/&gt;It is worth noticing that &lt;span class='highlightedSearchTerm'&gt;ns2&lt;/span&gt;&lt;br /&gt;uses a threshold to determine if a packet is received correctly or not,&lt;br /&gt;without considering a more correct bit error rate computation.&lt;br /&gt;&lt;br/&gt; &lt;br/&gt;The Free space model is the simplest one. It assumes ideal&lt;br /&gt;propagation conditions and a single line-of-sight path between the&lt;br /&gt;transmitter and receiver.&lt;br /&gt;&lt;br/&gt;The Two-ray ground reflection model considers both the direct path&lt;br /&gt;and a ground reflection path. As with the free space model, both&lt;br /&gt;transmitter and receiver node are assumed to be in line of sight. It&lt;br /&gt;has been shown that this model is more accurate than free space model&lt;br /&gt;in case of long distance line of sight path.&lt;br /&gt;&lt;br/&gt;Both the Free space model and the Two-ray model predict the&lt;br /&gt;received power as a deterministic function of the distance between the&lt;br /&gt;transmitter and receiver.&lt;br /&gt;&lt;br/&gt; &lt;br/&gt;A more realistic model is the Shadowing model. It adds to the&lt;br /&gt;deterministic path loss, a random component to the received power that&lt;br /&gt;attempts to reproduce random variability typical of wireless links&lt;br /&gt;(e.g. fading). The shadowing model consists, in fact, of two parts: the&lt;br /&gt;first one is the deterministic path loss that predicts the received&lt;br /&gt;power from the distance between the receiver and transmitter nodes; the&lt;br /&gt;second part of the shadowing model reflects the variation of the&lt;br /&gt;received power at certain distance. The shadowing is simulated as a&lt;br /&gt;log-normal random variable, with zero mean. The effect of shadowing&lt;br /&gt;correlation is not considered. &lt;br /&gt;&lt;br/&gt;&lt;br/&gt;A detailed description of the &lt;span class='highlightedSearchTerm'&gt;ns2&lt;/span&gt; propagation models and an accurate parameter setting description can be found in the &lt;span class='highlightedSearchTerm'&gt;ns2&lt;/span&gt; manual: &lt;span class='link-external'&gt;&lt;a target='_self' href='http://www.isi.edu/nsnam/ns/doc/node215.html' class='generated'&gt;http://www.isi.edu/nsnam/ns/doc/node215.html&lt;/a&gt;&lt;/span&gt;.&lt;br /&gt;&lt;br/&gt;&lt;br/&gt;Moreover, it is worth to pinpoint that there exist some extensions to default &lt;span class='highlightedSearchTerm'&gt;ns2&lt;/span&gt; propagation model that are not included into the &lt;span class='highlightedSearchTerm'&gt;ns2&lt;/span&gt; official distribution, but can be downloaded from the &lt;span class='highlightedSearchTerm'&gt;ns2&lt;/span&gt; contributed code web page: &lt;span class='link-external'&gt;&lt;a target='_self' href='http://nsnam.isi.edu/nsnam/index.php/Contributed_Code' class='generated'&gt;http://nsnam.isi.edu/nsnam/index.php/Contributed_Code&lt;/a&gt;&lt;/span&gt;.&lt;br /&gt;&lt;br/&gt;&lt;br/&gt;Among several extensions the more relevant are:&lt;br /&gt;&lt;br/&gt;•    realistic channel propagation by Wu Xiuchao,&lt;br /&gt;&lt;br/&gt;•    ricean propagation model by Ratish J. Punnoose.&lt;br /&gt;&lt;br/&gt;&lt;br/&gt;&lt;a href='http://www.ist-cruise.eu/cruise/cruise-private-folder/copy_of_wp121/document-folder/wp123-wsn-simulation-tool-knowledgebase/simulation-tool-details/copy_of_simulation-tool-detailed-information-template'&gt;Original link&lt;/a&gt;&lt;br/&gt;&lt;br/&gt;&lt;br/&gt;&lt;p class='poweredbyperformancing'&gt;Powered by &lt;a href='http://scribefire.com/'&gt;ScribeFire&lt;/a&gt;.&lt;/p&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5238991662990421610-8756034567894464228?l=ns-3.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://ns-3.blogspot.com/feeds/8756034567894464228/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=5238991662990421610&amp;postID=8756034567894464228' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5238991662990421610/posts/default/8756034567894464228'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5238991662990421610/posts/default/8756034567894464228'/><link rel='alternate' type='text/html' href='http://ns-3.blogspot.com/2008/01/ns2-radio-propagation-models.html' title='ns2 radio propagation models'/><author><name>SONG</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5238991662990421610.post-6854958449336652852</id><published>2008-01-01T15:37:00.001-08:00</published><updated>2008-01-01T15:37:22.948-08:00</updated><title type='text'>DSR interface queue length</title><content type='html'>&lt;div xmlns='http://www.w3.org/1999/xhtml'&gt;It seems I cannot set the queue length in the tcl script using&lt;br/&gt;&lt;br/&gt;    node-config -ifqLen &amp;amp;lt;qlen&amp;amp;gt;&lt;br/&gt;&lt;br/&gt;when I use DSR and CMUPriQueue.&lt;br/&gt;&lt;br/&gt;The only effective way for me is to modify the C++ file dsr-priqueue.h under directory ns2/queue/. There is a statement&lt;br/&gt;&lt;br/&gt;    "#define IFQ_MAXLEN 50"&lt;br/&gt;&lt;br/&gt;to specify the interface queue length is 50 packet, and it does changes the simulation result after I modified the value.&lt;br/&gt;&lt;br/&gt;Is it a small bug?&lt;br/&gt;&lt;font size='3' face='Arial'&gt;&lt;span style='font-family: Arial;'/&gt;&lt;/font&gt;&lt;br/&gt;&lt;br/&gt;&lt;br/&gt;&lt;p class='poweredbyperformancing'&gt;Powered by &lt;a href='http://scribefire.com/'&gt;ScribeFire&lt;/a&gt;.&lt;/p&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5238991662990421610-6854958449336652852?l=ns-3.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://ns-3.blogspot.com/feeds/6854958449336652852/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=5238991662990421610&amp;postID=6854958449336652852' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5238991662990421610/posts/default/6854958449336652852'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5238991662990421610/posts/default/6854958449336652852'/><link rel='alternate' type='text/html' href='http://ns-3.blogspot.com/2008/01/dsr-interface-queue-length.html' title='DSR interface queue length'/><author><name>SONG</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5238991662990421610.post-6973189486364225238</id><published>2007-03-28T07:46:00.001-07:00</published><updated>2007-03-28T07:46:29.820-07:00</updated><title type='text'>The Enhanced Network Simulator (TENS)</title><content type='html'>&lt;div xmlns='http://www.w3.org/1999/xhtml'&gt;An enhanced MAC implementation for ns2. &lt;a href='http://www.cse.iitk.ac.in/users/braman/tens/'&gt;Link&lt;/a&gt;.&lt;br&gt;&lt;/br&gt;&lt;br&gt;&lt;/br&gt;Features:&lt;br&gt;&lt;/br&gt;&lt;br&gt;&lt;/br&gt;&lt;font color='#ff0000'&gt;Multiple interface support added&lt;/font&gt;&lt;br /&gt;	&lt;p style='margin-top: 0pt; margin-bottom: 0pt;'&gt;Static Routing implemented for &lt;br /&gt;wireless nodes&lt;br&gt;&lt;/br&gt;Co Channel interference added&lt;br&gt;&lt;/br&gt;Adaptive data rate support for &lt;br /&gt;802.11&lt;br&gt;&lt;/br&gt;BPSK Modulation Scheme Added&lt;br&gt;&lt;/br&gt;&lt;font color='#ff0000'&gt;Directional Antenna support added &lt;br /&gt;(More radiation pattern added in TENS1.2)&lt;/font&gt;&lt;br&gt;&lt;/br&gt;Channel Number made configurable&lt;br&gt;&lt;/br&gt;Addition of ARP entries through &lt;br /&gt;script&lt;br&gt;&lt;/br&gt;2-p protocol for point to point &lt;br /&gt;link addedSeveral MAC parameters like RTS &lt;br /&gt;Threshold, Capture threshold made configurable. See the &lt;a href='http://www.cse.iitk.ac.in/users/braman/tens/#Tutorial'&gt;tutorial&lt;/a&gt; for full details.&lt;/p&gt;&lt;br&gt;&lt;/br&gt;&lt;br&gt;&lt;/br&gt;&lt;br&gt;&lt;/br&gt;&lt;br&gt;&lt;/br&gt;&lt;br&gt;&lt;/br&gt;&lt;p class='poweredbyperformancing'&gt;Powered by &lt;a href='http://scribefire.com/'&gt;ScribeFire&lt;/a&gt;.&lt;/p&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5238991662990421610-6973189486364225238?l=ns-3.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://ns-3.blogspot.com/feeds/6973189486364225238/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=5238991662990421610&amp;postID=6973189486364225238' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5238991662990421610/posts/default/6973189486364225238'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5238991662990421610/posts/default/6973189486364225238'/><link rel='alternate' type='text/html' href='http://ns-3.blogspot.com/2007/03/enhanced-network-simulator-tens.html' title='The Enhanced Network Simulator (TENS)'/><author><name>SONG</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5238991662990421610.post-2624201213369157017</id><published>2007-01-18T16:19:00.002-08:00</published><updated>2007-01-19T09:02:51.283-08:00</updated><title type='text'>The First Post</title><content type='html'>Well, this blog will focus on my learning, using, and developing experience of the &lt;a href="http://www.isi.edu/nsnam/ns/"&gt;Network Simulator (ns2)&lt;/a&gt;. The title of this blog is supposed to include the key work "ns2". However, neither ns2.blogspot.com nor ns-2.blogspot.com was available when I registered this blog. Fortunately, it seems nobody takes "ns-3", and I know the next generation of Network Simulator (ns3) will come this year. Cheers!&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5238991662990421610-2624201213369157017?l=ns-3.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://ns-3.blogspot.com/feeds/2624201213369157017/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=5238991662990421610&amp;postID=2624201213369157017' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5238991662990421610/posts/default/2624201213369157017'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5238991662990421610/posts/default/2624201213369157017'/><link rel='alternate' type='text/html' href='http://ns-3.blogspot.com/2007/01/first-post.html' title='The First Post'/><author><name>SONG</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry></feed>
