From chris@cs.vu.nl Mon Mar 1 09:01:49 1999 From: chris@cs.vu.nl (Christoph Haenle) Date: Mon, 01 Mar 1999 10:01:49 +0100 Subject: Virtual memory exceeded in new In-Reply-To: Your message of "Sat, 27 Feb 1999 07:33:26 MET." <3749.199902270733@tina.comp.lancs.ac.uk> Message-ID: Hi Randa, > > Also, I have done ps and pagesize commands while program is running. > > But I have not tried to increase the swap area. I am working on ultra-10 SunOS 5.6. Does anyone know how to increase it? Under Solaris, become root and create a dummy file with mkfile somewhere. Then tell the system to use this file as swap area by adding it with "swap -a filename". See also the man pages for mkfile and swap. -Chris. From s6356bod@hszk.bme.hu Mon Mar 1 09:06:49 1999 From: s6356bod@hszk.bme.hu (Bodog Gyula) Date: Mon, 1 Mar 1999 10:06:49 +0100 (MET) Subject: Flowmonitor Message-ID: Daer all, I've some problem with flowmonitor. I install 20 FTP flow between two nodes, and hwen i collect the stats for the flow, I get only one row. Which means for me, that there's only one flow. Now I used NS 2.1b4, but when I used NS 2.1b3 I didn't have any problem with this. Here's my script, which collect the flow stats: proc flowq {qmon ist} { global ns ; set time [$ns now] set ch [open dump w] $qmon attach $ch $qmon dump $ns at [expr $time + $ist] "flowq $qmon $ist" set qmon [makeflowmon] attach-fmon $l $qmon $ns at 30.0 "flowq $qmon 30" Any comment could be helpful. * * * * * * * * * * * * * * * * * * * * * * * * * * * * * Gyula Bodog * * e-mail: s6356bod@ural2.hszk.bme.hu * * tel.: (06 1) 3-691-839 * * Student at Technical University of Budapest * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * From Lloyd Wood Mon Mar 1 12:30:08 1999 From: Lloyd Wood (Lloyd Wood) Date: Mon, 1 Mar 1999 12:30:08 +0000 (GMT) Subject: ns-2.1b5 In-Reply-To: Message-ID: On Sat, 27 Feb 1999, Juana Elias Nakfour wrote: > I've been reading the e-mails that have been going around, and I > saw two e-mails concerning the new version of ns. One said that it will be > out in the end of February and the other said it is still unknown. does > anyone know the exact date? (checks calendar. 1 March.) I vote for the latter for a new beta release - unless you're running snapshots, when there's a new version of ns every day. > My current research includes running snoop.tcl. I just want to know if > anyone was able to run it cause I am having a bit of trouble. I did see > the mail archive and it really doesn't explain a lot. IIRC (and this is mentioned in the archive in a couple of places), snoop's broken, is not currently maintained, time spent by someone to fix it would be appreciated, pointers/help would be provided. cheers, L. PGP From gpol@telecom.ntua.gr Mon Mar 1 01:54:36 1999 From: gpol@telecom.ntua.gr (George Politis) Date: Mon, 1 Mar 1999 03:54:36 +0200 Subject: A question on CBQ mechanism. Message-ID: <01BE6397.3A9E7FB0@hwpc176.telecom.ece.ntua.gr> Dear all, I'm not quite sure about the queuing mechanism of the CBQ, whether it implements: 1. one queue per flow (IntServ model), or 2. one queue per class (DiffServ model). I would appreciate to your help. Kind regards, ======================================= George Politis Electrical Engineer National Technical University of Athens tel +301 7722423 fax +301 7722534 e-mail gpol@telecom.ntua.gr ======================================= From Qian_Ming/nsih2_RALEIGH/alcatel/US/Telemail/alcanet@aurfh1.aur.alcatel.com Mon Mar 1 15:47:31 1999 From: Qian_Ming/nsih2_RALEIGH/alcatel/US/Telemail/alcanet@aurfh1.aur.alcatel.com (Qian_Ming/nsih2_RALEIGH/alcatel/US/Telemail/alcanet@aurfh1.aur.alcatel.com) Date: Mon, 1 Mar 99 10:47:31 -0500 Subject: bad font for nam, help wanted! Message-ID: I try to run an example simulation and get the following error message. Can anybody on this list help me to fix this problem? Please advise. poitier qianmi> ns example1.tcl poitier qianmi> Cannot connect to existing nam instance. Starting a new one... X Error of failed request: BadFont (invalid Font parameter) Major opcode of failed request: 55 (X_CreateGC) Resource id in failed request: 0x4c00027 Serial number of failed request: 89 Current serial number in output stream: 91 From Marc.Volmer@oenzl.siemens.de Mon Mar 1 16:51:47 1999 From: Marc.Volmer@oenzl.siemens.de (Volmer, Marc) Date: Mon, 01 Mar 1999 17:51:47 +0100 Subject: AW: A question on CBQ mechanism. Message-ID: <1999Mar01.183100.2013.82630@msmail.oenzl.siemens.de> Hi, The CBQ mechanism, as it is implemented in ns, uses one queue per class (look at tcl/lib/ns-queue.tcl). Marc Volmer ENST, Paris. ---------- >Von: George Politis >An: 'NS mailing list' >Betreff: A question on CBQ mechanism. >Datum: Montag, 1. März 1999 17:37 > >Dear all, > >I'm not quite sure about the queuing mechanism of the CBQ, >whether it implements: > 1. one queue per flow (IntServ model), or > 2. one queue per class (DiffServ model). > >I would appreciate to your help. > >Kind regards, > >======================================= >George Politis >Electrical Engineer >National Technical University of Athens >tel +301 7722423 >fax +301 7722534 >e-mail gpol@telecom.ntua.gr >======================================= > > > >------ Message Header Follows ------ >Received: from oenzl.siemens.de by msmail.oenzl.siemens.de > (PostalUnion/SMTP(tm) v2.1.9f for Windows NT(tm)) > id AA-1999Mar01.173757.2013.58532; Mon, 01 Mar 1999 17:37:58 +0100 >Received: from herkules.siemens.de by oenzl.siemens.de (4.1/SMI-4.1) > id AA06694; Mon, 1 Mar 99 17:37:58 MET >Received: from david.siemens.de (david.siemens.de [192.35.17.14]) > by herkules.siemens.de (8.9.3/8.9.3) with ESMTP id RAA10147 > for ; Mon, 1 Mar 1999 17:38:10 +0100 (MET) >X-Envelope-Sender-Is: owner-ns-users@mash.CS.Berkeley.EDU (at relayer >david.siemens.de) >Received: from mash.CS.Berkeley.EDU (mash.CS.Berkeley.EDU [128.32.130.10]) > by david.siemens.de (8.9.3/8.9.3) with ESMTP id RAA20529 > for ; Mon, 1 Mar 1999 17:37:57 +0100 (MET) >Received: from ulysses.noc.ntua.gr (ulysses.noc.ntua.gr [147.102.222.230]) > by mash.CS.Berkeley.EDU (8.9.1/8.9.1) with ESMTP id HAA21653 > for ; Mon, 1 Mar 1999 07:45:25 -0800 (PST) >Received: from ektor.telecom.ece.ntua.gr (ektor.telecom.ece.ntua.gr >[147.102.7.1]) > by ulysses.noc.ntua.gr (8.9.3/8.9.3) with ESMTP id RAA13555 > for ; Mon, 1 Mar 1999 17:45:17 +0200 (EET) >Received: by telecom.ntua.gr with SMTP > id RAA22496 at Mon, 1 Mar 1999 17:40:22 +0200 (EET) >Received: by hwpc176.telecom.ece.ntua.gr with Microsoft Mail > id <01BE6397.3A9E7FB0@hwpc176.telecom.ece.ntua.gr>; Mon, 1 Mar 1999 03:54:38 >+0200 >Message-Id: <01BE6397.3A9E7FB0@hwpc176.telecom.ece.ntua.gr> >From: George Politis >To: "'NS mailing list'" >Subject: A question on CBQ mechanism. >Date: Mon, 1 Mar 1999 03:54:36 +0200 >Mime-Version: 1.0 >Content-Type: text/plain; charset="us-ascii" >Content-Transfer-Encoding: 7bit > > From sunmin@orff.ecse.rpi.edu Mon Mar 1 20:04:49 1999 From: sunmin@orff.ecse.rpi.edu (Mingzhou Sun) Date: Mon, 01 Mar 1999 15:04:49 -0500 Subject: Q: Problem compiling rtProtoLS with egcs-1.1.1 In-Reply-To: Your message of "Fri, 26 Feb 1999 18:17:10 PST." <36D755A6.1958DFB9@cs.ucdavis.edu> Message-ID: <199903012004.PAA16533@orff.ecse.rpi.edu> > Hi, > > For one of my research problems, I need to simulate a link-state routing > protocol in ns-2 (basically, I need an implementation of a simplified > version of OSPF). > > So, I downloaded rtProtoLS (developed by Mingzhou Sun at RPI > http://networks.ecse.rpi.edu/~sunmin/rtProtoLS/) and tried compiling it > with egcs-1.1.1. This is what happened: > > 1. packet.cc and trace.cc compiled successfully. > 2. While compiling rtProtoLS.cc, I got the following error(s): > > ---------------------------------------------------------------- > c++ -c -DNSLS -I. -I/home/sahasrab/ns/ns-allinone-2.1b4a/ns-2 > -I/home/sahasrab/ns/ns-allinone-2.1b4a/tcl8.0/generic > -I/home/sahasrab/ns/ns-allinone-2.1b4a/otcl -I. -I/usr/include > -I../tclcl -I../otcl -I../tkbox/include -I../tclbox/include -g -Wall > -DNO_TK -DTCLCL_CLASSINSTVAR -DNDEBUG -DUSE_SHM -DHAVE_DBG_H > -DHAVE_LIBTCLCL1_0B7 -DHAVE_TCLCL_H -DHAVE_LIBOTCL1_0A3 -DHAVE_OTCL_H > -DHAVE_LIBTK8_0 -DHAVE_TK_H -DHAVE_LIBTCL8_0 -DHAVE_TCL_H > -DSTDC_HEADERS=1 -DHAVE_STRING_H=1 -DHAVE_TCL_H=1 -DHAVE_LIBTCL8_0=1 > -DHAVE_TK_H=1 -DHAVE_LIBTK8_0=1 -DHAVE_OTCL_H=1 -DHAVE_LIBOTCL1_0A3=1 > -DHAVE_TCLCL_H=1-DHAVE_LIBTCLCL1_0B7=1 -DHAVE_DBG_H=1 -DHAVE_GETRUSAGE=1 > -DHAVE_SBRK=1 -o rtProtoLS.o rtProtoLS.cc > ls.h: In method `LsList::LsList()': > ls.h:183: instantiated from here > In file included from rtProtoLS.h:12, > from rtProtoLS.cc:6: > ls.h:96: Internal compiler error. > ls.h:96: Please submit a full bug report to `egcs-bugs@cygnus.com'. > ls.h:96: See for > details. > gmake[1]: *** [rtProtoLS.o] Error 1 > gmake[1]: Leaving directory > `/home/sahasrab/ns/ns-allinone-2.1b4a/rtProtoLS_b4' > make: *** [all] Error 2 > ---------------------------------------------------------------- > > Maybe the problem is in the compiler and I will be sending a bug report > to egcs-bugs@cygnus.com, but if you know a quick fix or you have some > suggestions, please let me know asap. Btw, I have sent a separate > request to Mingzhou Sun (the author of rtProtoLS). > > Also, if you know of some other OSPF-like module (not rtProtoLS) that > works with ns-2, please let me know. > > Thanks in advance, > Laxman. sahasrab, Thanks for trying out rtProtoLS and finding out problems. I am not good with the compiler thing either, but I would suggest that you try comment out that line altogether, and see if the compiler will generate the correct default constructor for it. Thanks for reporting the problemI'd appreciate it if you can tell me how it goes. Mingzhou Sun RPI From Lloyd Wood Mon Mar 1 21:33:52 1999 From: Lloyd Wood (Lloyd Wood) Date: Mon, 1 Mar 1999 21:33:52 +0000 (GMT) Subject: Core-Stateless Fair Queuing for ns Message-ID: http://www.cs.cmu.edu/~istoica/csfq/ A quick check of the ns research and contributed code pages on the mash server didn't turn up a mention of or link to this, so I thought I'd point its existence out. Looks like simulations of traffic conditioning at network edges; for ns 2.1b2. Haven't tried the code. Cheers, L. PGP From Steven.Russert@PSS.Boeing.com Tue Mar 2 00:47:24 1999 From: Steven.Russert@PSS.Boeing.com (Russert, Steven W) Date: Mon, 1 Mar 1999 16:47:24 -0800 Subject: nam - no display Message-ID: <618FD3AF120DD111A27900805F19D9C4039DCF8A@xch-blv-03.ca.boeing.com> Hello, I'm running too short of hair to continue alone, so... I have a P-133 machine with Red Hat Linux 2.0.36 tcl 8.0.3 came with the OS I have installed tclcl 1.0b7 (then changed to 1.0b6, just in case), otcl 1.0a3, ns 2.1b4, and nam 1.0a6 ns runs the verification suite ok, but whenever nam is invoked, it just goes away, pegs the cpu utilization guage, and doesn't display anything. I even let nam run for 3 days with no change. I'm using X from a desktop NT4 system, but I haven't seen any problems with other applications getting to the display. Any ideas? Thanks, Steven W. Russert Boeing Phantom Works M&CT steven.w.russert@boeing.com 425-865-3588 From haoboy@isi.edu Tue Mar 2 00:52:38 1999 From: haoboy@isi.edu (Haobo Yu) Date: Mon, 1 Mar 1999 16:52:38 -0800 (PST) Subject: nam - no display In-Reply-To: <618FD3AF120DD111A27900805F19D9C4039DCF8A@xch-blv-03.ca.boeing.com> Message-ID: I'm using nam with tcl8.0.4 and others the same as yours and haven't seen this kind of problem. Did you test nam on any of its example traces (nam/ex/*.nam)? If you run it on your own nam trace file, could you please send me that file? Thanks. - Haobo > I have a P-133 machine with Red Hat Linux 2.0.36 > tcl 8.0.3 came with the OS > I have installed tclcl 1.0b7 (then changed to 1.0b6, just in case), otcl 1.0a3, ns 2.1b4, and nam 1.0a6 > ns runs the verification suite ok, but whenever nam is invoked, it just goes away, pegs the cpu utilization guage, and doesn't display anything. I even let nam run for 3 days with no change. > I'm using X from a desktop NT4 system, but I haven't seen any problems with other applications getting to the display. > Any ideas? > > Thanks, > > Steven W. Russert > Boeing Phantom Works M&CT > steven.w.russert@boeing.com > 425-865-3588 > > From Steven.Russert@PSS.Boeing.com Tue Mar 2 01:00:20 1999 From: Steven.Russert@PSS.Boeing.com (Russert, Steven W) Date: Mon, 1 Mar 1999 17:00:20 -0800 Subject: nam - no display Message-ID: <618FD3AF120DD111A27900805F19D9C4039DCF8B@xch-blv-03.ca.boeing.com> Haobo, Thanks for the reply. I ran nam against several of the examples, and I even took the shortest one and cut off everything but the first 10 or 12 lines. I have even run nam with no arguments, and I get the same thing. Steve > ---------- > From: Haobo Yu[SMTP:haoboy@isi.edu] > Sent: Monday, March 01, 1999 4:52 PM > To: Russert, Steven W > Cc: 'ns-users@mash.cs.berkeley.edu' > Subject: Re: nam - no display > > I'm using nam with tcl8.0.4 and others the same as yours and haven't seen > this kind of problem. Did you test nam on any of its example traces > (nam/ex/*.nam)? If you run it on your own nam trace file, could you please > send me that file? Thanks. > > - Haobo > > > I have a P-133 machine with Red Hat Linux 2.0.36 > > tcl 8.0.3 came with the OS > > I have installed tclcl 1.0b7 (then changed to 1.0b6, just in case), otcl 1.0a3, ns 2.1b4, and nam 1.0a6 > > ns runs the verification suite ok, but whenever nam is invoked, it just goes away, pegs the cpu utilization guage, and doesn't display anything. I even let nam run for 3 days with no change. > > I'm using X from a desktop NT4 system, but I haven't seen any problems with other applications getting to the display. > > Any ideas? > > > > Thanks, > > > > Steven W. Russert > > Boeing Phantom Works M&CT > > steven.w.russert@boeing.com > > 425-865-3588 > > > > > From sva0392@tntech.edu Tue Mar 2 04:25:39 1999 From: sva0392@tntech.edu (Syamsundar V Appala) Date: Mon, 01 Mar 1999 22:25:39 -0600 (CST) Subject: Lossmonitor? for packet losses Message-ID: Hi, I'm currently working on the implementation of Scalable Relaible Multicast protocol. For obtaining packet losses at a particular receiver what do I need to use. Is it loss monitor Agent or Mcastmonitor.Please let me know. Regards, Syam Appala From p.losi@netline.it Tue Mar 2 08:55:17 1999 From: p.losi@netline.it (Paolo Losi) Date: Tue, 02 Mar 1999 08:55:17 +0000 Subject: PGPS (WFQ) code submission feedback request Message-ID: <36DBA775.EC74C8E5@netline.it> I would like to contribute the ns-2 community with my implementation of Packet-by-Packet Generalized Processor Sharing (generally know as Weighted Fair Queueing). Is there anyone interested in it? I'd like to have a feedback from ns2 developers also. Thanks Paolo Losi From greis@cs.uni-bonn.de Tue Mar 2 09:44:45 1999 From: greis@cs.uni-bonn.de (Marc Greis) Date: Tue, 2 Mar 1999 10:44:45 +0100 (MET) Subject: PGPS (WFQ) code submission feedback request In-Reply-To: <36DBA775.EC74C8E5@netline.it> from "Paolo Losi" at Mar 2, 99 08:55:17 am Message-ID: <199903020944.KAA09739@zeus.informatik.uni-bonn.de> Paolo Losi wrote: > I would like to contribute the ns-2 community with > my implementation of Packet-by-Packet Generalized > Processor Sharing (generally know as Weighted Fair > Queueing). > Is there anyone interested in it? > I'd like to have a feedback from ns2 developers also. Paolo, >From my own experience, I know that there is a huge interest in WFQ modules among the ns-2 users (I would say that about 30-40% of the people who request my RSVP modules want them for the WFQ code), so I would think that many people would appreciate it. Is there already some way for getting the code, or did you want to wait for feedback? I think I'd be interested in taking a look at it myself. ;) Marc -- Marc Greis greis@cs.uni-bonn.de From p.losi@netline.it Tue Mar 2 09:53:01 1999 From: p.losi@netline.it (Paolo Losi) Date: Tue, 02 Mar 1999 09:53:01 +0000 Subject: PGPS (WFQ) code submission feedback request References: <199903020944.KAA09739@zeus.informatik.uni-bonn.de> Message-ID: <36DBB4FD.127BC316@netline.it> Marc Greis wrote: > > Paolo Losi wrote: > > I would like to contribute the ns-2 community with > > my implementation of Packet-by-Packet Generalized > > Processor Sharing (generally know as Weighted Fair > > Queueing). > > Is there anyone interested in it? > > I'd like to have a feedback from ns2 developers also. > > Paolo, > > >From my own experience, I know that there is a huge interest in WFQ > modules among the ns-2 users (I would say that about 30-40% of the > people who request my RSVP modules want them for the WFQ code), so I > would think that many people would appreciate it. Is there already > some way for getting the code, or did you want to wait for feedback? I > think I'd be interested in taking a look at it myself. ;) > > Marc > > -- > Marc Greis greis@cs.uni-bonn.de The code I'm talking about is the one I used for my graduation work that is now completed. Some time ago I asked the research group I was working for for a permission to distribute the code. At that time the answer was "quite" positive. I'd like to see now if there is any interest in my work ... if so, I'll ask a more official permission. I'm documenting the whole thing now, aiming at internal use, but I hope I'll able to share the WFQ modules with the community Paolo Losi From Chadi.Barakat@sophia.inria.fr Tue Mar 2 12:56:11 1999 From: Chadi.Barakat@sophia.inria.fr (Chadi M. BARAKAT) Date: Tue, 02 Mar 1999 13:56:11 +0100 Subject: Problem Message-ID: <36DBDFEB.5AB75383@sophia.inria.fr> Hello, I got the following error message while installing ns. Do you have any idea?? Chadi cc tclAppInit.o -L/0/mistral2/cbarakat/Ns/tcl8.0/unix -ltcl8.0 -ldl -lsocket -lnsl -lm -lc \ -o tclsh Undefined first referenced symbol in file fixstrtod /0/mistral2/cbarakat/Ns/tcl8.0/unix/libtcl8.0.a(tclObj.o) ld: fatal: Symbol referencing errors. No output written to tclsh *** Error code 1 make: Fatal error: Command failed for target `tclsh' tcl8.0 make failed! Exiting ... -- ** Chadi Mohamad BARAKAT ** http://www.inria.fr/mistral/personnel/Chadi.Barakat /\ PhD Student - MISTRAL - INRIA / \ Chadi.Barakat@sophia.inria.fr 2004, Route des Lucioles BP 93 \ / Phone : + 33 4 92 38 71 99 06902 Sophia Antipolis - France \/ Cell : + 33 6 10 42 36 30 From Lloyd Wood Tue Mar 2 13:25:02 1999 From: Lloyd Wood (Lloyd Wood) Date: Tue, 2 Mar 1999 13:25:02 +0000 (GMT) Subject: Problem In-Reply-To: <36DBDFEB.5AB75383@sophia.inria.fr> Message-ID: On Tue, 2 Mar 1999, Chadi M. BARAKAT wrote: > I got the following error message while installing ns. from the allinone package? You don't say. > Do you have any idea?? Hmmm, Inria Sophia Antipolis recently upgraded en masse to Solaris 2.6 - or so Antoine tells me. (although you neglect to say what you're using.) So, since I'm also using Solaris... If you look in ~tcl8.0/unix/configure.in you'll see: #-------------------------------------------------------------------- # Under Solaris 2.4, strtod returns the wrong value for the # terminating character under some conditions. Check for this # and if the problem exists use a substitute procedure # "fixstrtod" that corrects the error. #-------------------------------------------------------------------- (for my Tcl 8.0p2, anyway), followed by various bits and pieces. My guess is that Tcl isn't taking account of Solaris 2.6 in this and strtod is fixed (no idea about 2.5/2.5.1), and configure needs adjusting. I'd also guess that a later Tcl (you don't specify what version you're running) may fix this. Looks very much like a Tcl problem, rather than an ns problem, to me. Cheers, L. all this from 'grep * fixstrtod'! I've never liked find. > cc tclAppInit.o -L/0/mistral2/cbarakat/Ns/tcl8.0/unix -ltcl8.0 -ldl > -lsocket -lnsl -lm -lc \ > -o tclsh > Undefined first referenced > symbol in file > fixstrtod > /0/mistral2/cbarakat/Ns/tcl8.0/unix/libtcl8.0.a(tclObj.o) > ld: fatal: Symbol referencing errors. No output written to tclsh > *** Error code 1 > make: Fatal error: Command failed for target `tclsh' > tcl8.0 make failed! Exiting ... > > -- > ** Chadi Mohamad BARAKAT ** > http://www.inria.fr/mistral/personnel/Chadi.Barakat > /\ > PhD Student - MISTRAL - INRIA / \ Chadi.Barakat@sophia.inria.fr > 2004, Route des Lucioles BP 93 \ / Phone : + 33 4 92 38 71 99 > 06902 Sophia Antipolis - France \/ Cell : + 33 6 10 42 36 30 PGP From softrel9@nortelnetworks.com Tue Mar 2 15:57:34 1999 From: softrel9@nortelnetworks.com (Sarah Liu) Date: Tue, 2 Mar 1999 10:57:34 -0500 Subject: dropped packet in nam Message-ID: <03E3E0690542D211A1490000F80836F43E45BD@zcard00f.ca.nortel.com> Hi, everybody: I wrote several scripts to generate some packet loss on different links using SelectErrorModel and LossMonitor. I got the following as part of the result: (In this topology, I have 6 nodes) rcvr 0 lost 55 pkt, rcv 72 rcvr 1 lost 78 pkt, rcv 73 rcvr 2 lost 32 pkt, rcv 49 rcvr 3 lost 7 pkt, rcv 18 rcvr 4 lost 7 pkt, rcv 48 rcvr 5 lost 14 pkt, rcv 38 Right now, I am using nam-1.0a7 and from the nam documentation I got, it seems that "dropped packet can be shown as a rotating squares and disappear at the end of the screen". But I didn't see any such rotating packet during the animation. So, my question is : Is that possible to visualize the loss of packet in nam and How? I would very appreciate for the help of anyone who know this. Cheers, Sarah ---------------------------------------------------------------------------- -------------------------------- Sarah Xiaohui Liu, 613-765-3203 o__ o~__ Email: softrel9@nortelnetworks.com _,>/_ _,>/_ u1452573@csi.uottawa.ca (*) (*) (*) (*) Mail Stop: 0C32, Nortel Networks Corp. ---------------------------------------------------------------------------- -------------------------------- From haoboy@isi.edu Tue Mar 2 18:25:50 1999 From: haoboy@isi.edu (Haobo Yu) Date: Tue, 2 Mar 1999 10:25:50 -0800 (PST) Subject: dropped packet in nam In-Reply-To: <03E3E0690542D211A1490000F80836F43E45BD@zcard00f.ca.nortel.com> Message-ID: If packets are dropped from queues, it's automatically written to nam trace if you do namtrace-all{}. But if you use error models to drop packets you have to add those packets to nam traces yourself. All those error models have a OTcl method drop-target{} to allow you put a drop trace object there: # Assume you want to monitor loss at an error model $em on a simplex link (n1, n2) $em drop-target [$ns create-trace Drop [$ns get-nam-traceall] $n1 $n2 "nam"] Do this in your sim script after you've called namtrace-all{} and it'll add a trace line for each dropped packet there. - Haobo On Tue, 2 Mar 1999, Sarah Liu wrote: > Hi, everybody: > > I wrote several scripts to generate some packet loss on different links > using SelectErrorModel and LossMonitor. I got the following as part of the > result: (In this topology, I have 6 nodes) > > rcvr 0 lost 55 pkt, rcv 72 > rcvr 1 lost 78 pkt, rcv 73 > rcvr 2 lost 32 pkt, rcv 49 > rcvr 3 lost 7 pkt, rcv 18 > rcvr 4 lost 7 pkt, rcv 48 > rcvr 5 lost 14 pkt, rcv 38 > > Right now, I am using nam-1.0a7 and from the nam documentation I got, it > seems that "dropped packet can be shown as a rotating squares and disappear > at the end of the screen". But I didn't see any such rotating packet during > the animation. So, my question is : Is that possible to visualize the loss > of packet in nam and How? > > I would very appreciate for the help of anyone who know this. > > Cheers, > > Sarah > > ---------------------------------------------------------------------------- > -------------------------------- > Sarah Xiaohui Liu, 613-765-3203 o__ o~__ > Email: softrel9@nortelnetworks.com _,>/_ _,>/_ > u1452573@csi.uottawa.ca (*) (*) (*) (*) > Mail Stop: 0C32, Nortel Networks Corp. > > ---------------------------------------------------------------------------- > -------------------------------- > > From twu2@eos.ncsu.edu Tue Mar 2 18:57:29 1999 From: twu2@eos.ncsu.edu (twu2@eos.ncsu.edu) Date: Tue, 2 Mar 1999 13:57:29 -0500 (EST) Subject: NS tools Message-ID: <199903021857.NAA06725@loki.csc.ncsu.edu> Hi, Is there any tools/ways to show the statistics such as throughput, dropped packets' seqno, Cwnd values, or RTTs of a NS result? Thanks. Tsungli Wu From softrel9@nortelnetworks.com Tue Mar 2 19:26:16 1999 From: softrel9@nortelnetworks.com (Sarah Liu) Date: Tue, 2 Mar 1999 13:26:16 -0600 Subject: dropped packet in nam Message-ID: <03E3E0690542D211A1490000F80836F43E45BF@zcard00f.ca.nortel.com> This message is in MIME format. Since your mail reader does not understand this format, some or all of this message may not be legible. ------_=_NextPart_000_01BE64E2.8D6F6C4E Content-Type: text/plain; charset="iso-8859-1" Hi, Haobo, Thanks for your quick reply. I have followed your suggestion to modify the code, but unfortunately, it doesn't work. I don't know if I did it right? The error message is following: (_o208 cmd line 1) invoked from within "_o208 cmd drop-target_o211" invoked from within "catch "$self cmd $args" ret" (procedure "_o208" line 2) (SplitObject unknown line 2) invoked from within "$loss_module1 drop-target[$ns create-trace Drop [$ns get-nam-traceall] $n0 $n1 "nam"]" (file "fault4.tcl" line 132) But if I changed this line to : $ns create-trace Drop [$ns get-nam-traceall] $n0 $n1 "nam" and keep the original drop-target command line. The test runs well just as before -- still without the "d" in the nam file and can't see any rotating square dropped. For fear that I didn't put the drop-target command line in the right place, I attached the test file for your reference. Best Regards, Sarah ------_=_NextPart_000_01BE64E2.8D6F6C4E Content-Type: application/octet-stream; name="fault4.tcl" Content-Transfer-Encoding: quoted-printable Content-Disposition: attachment; filename="fault4.tcl" Content-Location: ATT-0-E19E5B91D0D0D211A19D0000F81ABA04-F AULT4.TCL # tests/fault4.tcl=0A= # 0=0A= # +-+--+=0A= # 1 2=0A= # +--+-+--+--+=0A= # 3 4 5=0A= #=0A= set ns [new Simulator -multicast on]=0A= =0A= $ns trace-all [open results/fault4.tr w]=0A= $ns namtrace-all [open results/fault4.nam w]=0A= =0A= =0A= set n0 [$ns node]=0A= set n1 [$ns node]=0A= set n2 [$ns node]=0A= set n3 [$ns node]=0A= set n4 [$ns node]=0A= set n5 [$ns node]=0A= =0A= $ns duplex-link $n0 $n1 1.5Mb 10ms DropTail=0A= $ns duplex-link $n0 $n2 1.5Mb 10ms DropTail=0A= $ns duplex-link $n1 $n3 1.5Mb 10ms DropTail=0A= $ns duplex-link $n1 $n4 1.5Mb 10ms DropTail=0A= $ns duplex-link $n2 $n4 1.5Mb 10ms DropTail=0A= $ns duplex-link $n2 $n5 1.5Mb 10ms DropTail=0A= $ns duplex-link-op $n0 $n1 orient left-down=0A= $ns duplex-link-op $n0 $n2 orient down-right=0A= $ns duplex-link-op $n1 $n3 orient left-down=0A= $ns duplex-link-op $n1 $n4 orient right-down=0A= $ns duplex-link-op $n2 $n4 orient left-down=0A= $ns duplex-link-op $n2 $n5 orient right-down=0A= =0A= ### Start multicast configuration:=0A= source ../src/CBTtimers.tcl=0A= =0A= CBT set Core_([expr 0x8003]) $n0=0A= =0A= CBT set JoinRtxTimeout_ 0.1=0A= CBT set TransTimeout_ 0.1=0A= CBT set EchoTimeout_ 0.15=0A= CBT set DownstreamTimeout_ 0.1=0A= =0A= $ns rtproto Algorithmic=0A= set mproto CBT=0A= set mrthandle [$ns mrtproto $mproto {}]=0A= if {$mrthandle !=3D ""} {=0A= $mrthandle set_c_rp [list $n2]=0A= }=0A= =0A= ### End of multicast configuration=0A= =0A= ### set the colour of packets generated by the constant bit rate = agents=0A= ### and of control messages=0A= =0A= $ns color 30 purple ;#prunes=0A= $ns color 34 red ;#joinreqs=0A= $ns color 35 yellow ;#joinacks=0A= $ns color 36 orange ;#echoreqs=0A= $ns color 37 cyan ;#echoreplys=0A= $ns color 38 green ;#flushtrees=0A= =0A= $n0 color blue ;#Core=0A= $n1 color Navy=0A= $n2 color BlueViolet=0A= =0A= $ns color 101 Navy ;#cbrs =0A= $ns color 102 BlueViolet =0A= =0A= set cbr1 [new Agent/CBR]=0A= #$cbr1 set ttl_ 3=0A= $cbr1 set dst_ 0x8003=0A= $cbr1 set class_ 101 =0A= $cbr1 set interval_ 20ms=0A= $ns attach-agent $n1 $cbr1=0A= =0A= set cbr2 [new Agent/CBR]=0A= #$cbr2 set ttl_ 3=0A= $cbr2 set dst_ 0x8003=0A= $cbr2 set class_ 102=0A= $cbr2 set interval_ 20ms=0A= $ns attach-agent $n2 $cbr2=0A= =0A= set rcvr0 [new Agent/LossMonitor]=0A= set rcvr1 [new Agent/LossMonitor]=0A= set rcvr2 [new Agent/LossMonitor] =0A= set rcvr3 [new Agent/LossMonitor]=0A= set rcvr4 [new Agent/LossMonitor]=0A= set rcvr5 [new Agent/LossMonitor]=0A= $ns attach-agent $n0 $rcvr0=0A= $ns attach-agent $n1 $rcvr1=0A= $ns attach-agent $n2 $rcvr2=0A= $ns attach-agent $n3 $rcvr3=0A= $ns attach-agent $n4 $rcvr4=0A= $ns attach-agent $n5 $rcvr5=0A= =0A= =0A= $ns at 0.2 "$n0 join-group $rcvr0 0x8003"=0A= $ns at 0.2 "$n1 join-group $rcvr1 0x8003"=0A= $ns at 0.3 "$n2 join-group $rcvr2 0x8003"=0A= $ns at 0.2 "$n3 join-group $rcvr3 0x8003"=0A= $ns at 0.2 "$n4 join-group $rcvr4 0x8003"=0A= $ns at 0.3 "$n5 join-group $rcvr5 0x8003"=0A= $ns at 0.6 "$n3 leave-group $rcvr3 0x8003"=0A= $ns at 0.8 "$n2 leave-group $rcvr2 0x8003"=0A= $ns at 1.0 "$n5 leave-group $rcvr5 0x8003"=0A= =0A= set loss_module1 [new SelectErrorModel]=0A= $loss_module1 drop-packet 2 200 1 ;# drop one PT_CBR packet every = 200 packets=0A= #$loss_module1 drop-target [$ns set nullAgent_] ;# <--- modified = here=0A= =0A= set loss_module2 [new SelectErrorModel]=0A= $loss_module2 drop-packet 2 100 1 ;# drop one PT_CBR packet every = 100 packets=0A= $loss_module2 drop-target [$ns set nullAgent_]=0A= =0A= set loss_module3 [new SelectErrorModel]=0A= $loss_module3 drop-packet 2 100 1 ;# drop one PT_CBR packet every = 100 packets=0A= $loss_module3 drop-target [$ns set nullAgent_]=0A= =0A= # insert the loss module; must be done before receivers join groups=0A= $ns lossmodel $loss_module1 $n0 $n1=0A= #$ns create-trace Drop [$ns get-nam-traceall] $n0 $n1 "nam" ;# = <--- modified here=0A= =0A= # the line you suggested=0A= $loss_module1 drop-target[$ns create-trace Drop [$ns get-nam-traceall] = $n0 $n1 "nam"] =0A= =0A= $ns lossmodel $loss_module2 $n1 $n3=0A= $ns lossmodel $loss_module3 $n2 $n5=0A= =0A= $ns at 0.1 "$cbr1 start"=0A= $ns at 0.15 "$cbr2 start"=0A= =0A= $ns at 1.2 "finish"=0A= =0A= proc finish {} {=0A= global rcvr3 rcvr4 rcvr5 n0 rcvr2 rcvr1 rcvr0 ns=0A= $ns flush-trace=0A= puts "rcvr 0 lost [$rcvr0 set nlost_] pkt, rcv [$rcvr0 set = npkts_]"=0A= puts "rcvr 1 lost [$rcvr1 set nlost_] pkt, rcv [$rcvr1 set = npkts_]"=0A= puts "rcvr 2 lost [$rcvr2 set nlost_] pkt, rcv [$rcvr2 set = npkts_]"=0A= puts "rcvr 3 lost [$rcvr3 set nlost_] pkt, rcv [$rcvr3 set npkts= _]"=0A= puts "rcvr 4 lost [$rcvr4 set nlost_] pkt, rcv [$rcvr4 set = npkts_]"=0A= puts "rcvr 5 lost [$rcvr5 set nlost_] pkt, rcv [$rcvr5 set = npkts_]"=0A= exec nam results/fault4.nam &=0A= exit 0=0A= }=0A= =0A= $ns run=0A= =0A= =0A= ------_=_NextPart_000_01BE64E2.8D6F6C4E-- From duan@cs.umn.edu Tue Mar 2 20:36:35 1999 From: duan@cs.umn.edu (Zhenhai Duan) Date: Tue, 2 Mar 1999 14:36:35 -0600 (CST) Subject: about TBF(Token Bucket Filter) Message-ID: I just checked the code of tbf, and I want to add in the Peak Rate contraint. But I am not sure how I should use this value. The way in my mind is this: Whenever I have enough tokens to send one packet, I postpone (scheduling a event) the sending by a delay(packetLength/peakRate), after timeout, I call target_->recv(p). Any comments are appreciated. --Zhenhai -------------------------------------------------------------- Zhenhai Duan duan@cs.umn.edu Computer Science Department http://www.cs.umn.edu/~duan University of Minnesota, TC Phone: (612)626-7526(O) -------------------------------------------------------------- From haoboy@isi.edu Tue Mar 2 21:13:08 1999 From: haoboy@isi.edu (Haobo Yu) Date: Tue, 2 Mar 1999 13:13:08 -0800 (PST) Subject: dropped packet in nam In-Reply-To: <03E3E0690542D211A1490000F80836F43E45BF@zcard00f.ca.nortel.com> Message-ID: There was something wrong with Simulator::lossmodel{} (and other error model installation methods in Link and SimpleLink), that they cannot produce nam trace events in the right order. Following are patches to ns-lib.tcl and ns-link.tcl. (They are against ns-lib.tcl version 1.139 and ns-link version 1.40. If you failed to apply them, you can either try do them manually using the context in them, or download the current snapshot). - Haobo * ns-lib.tcl: --- ns-lib.tcl~ 1999/02/26 23:06:34 +++ ns-lib.tcl 1999/03/02 20:22:00 @@ -1049,11 +1049,7 @@ ### to insert loss module to regular links in detailed Simulator Simulator instproc lossmodel {lossobj from to} { set link [$self link $from $to] - set head [$link head] - # puts "[[$head target] info class]" - $lossobj target [$head target] - $head target $lossobj - # puts "[[$head target] info class]" + $link errormodule $lossobj } Simulator instproc bw_parse { bspec } { * ns-link.tcl: --- ns-link.tcl~ 1998/10/28 19:26:49 +++ ns-link.tcl 1999/03/02 20:22:00 @@ -143,12 +143,6 @@ } } -Link instproc install-error {em} { - $self instvar link_ - $em target [$link_ target] - $link_ target $em -} - Class SimpleLink -superclass Link SimpleLink instproc init { src dst bw delay q {lltype "DelayLink"} } { @@ -464,8 +458,12 @@ # insert an "error module" after the queue # point the em's drop-target to the drophead # +# Must be inserted *RIGHT AFTER* the deqT_ (if present) or queue_, because +# nam can only visualize a packet drop if and only if it is on the link or +# in the queue +# SimpleLink instproc errormodule args { - $self instvar errmodule_ queue_ drophead_ + $self instvar errmodule_ queue_ drophead_ deqT_ if { $args == "" } { return $errmodule_ } @@ -473,7 +471,20 @@ set em [lindex $args 0] set errmodule_ $em - $self add-to-head $em + #$self add-to-head $em + if [info exists deqT_] { + $em target [$deqT_ target] + $deqT_ target $em + } else { + $em target [$queue_ target] + $queue_ target $em + } $em drop-target $drophead_ +} + +# Simply to provide backward compatibility +SimpleLink instproc install-error {em} { + puts "Obsolete interface. Please use errormodule{}" + $self errormodule $em } From hyryu@etri.re.kr Wed Mar 3 08:31:10 1999 From: hyryu@etri.re.kr (hyryu) Date: Wed, 3 Mar 1999 08:31:10 -0000 Subject: ld error Message-ID: <002f01be6550$317b3620$5bc0fe81@pony.etri.re.kr> This is a multi-part message in MIME format. ------=_NextPart_000_002C_01BE6550.313FB3C0 Content-Type: text/plain; charset="euc-kr" Content-Transfer-Encoding: base64 SGVsbG8gIQ0KDQoNCltwcmlzbTovdXNyL2xvY2FsL25zLWFsbGlub25lLTIuMWI0YS9ucy0yXSMg bWFrZQ0KYysrICAtbyBucyBcDQogICAgICAgIHRjbEFwcEluaXQubyAgcmFuZG9tLm8gcm5nLm8g cmFudmFyLm8gbWlzYy5vIHRpbWVyLWhhbmRsZXIubyBzY2hlZHVsZXIubyBvYmplY3QubyBwYWNr ZXQubyBpcC5vIHJvdXRlLm8gY29ubmVjdG9yLm8gdHRsLm8gdHJhY2UubyB0cmFjZS1pcC5vIGNs YXNzaWZpZXIubyBjbGFzc2lmaWVyLWFkZHIubyBjbGFzc2lmaWVyLWhhc2gubyBjbGFzc2lmaWVy LXZpcnR1YWwubyBjbGFzc2lmaWVyLW1jYXN0Lm8gY2xhc3NpZmllci1tcGF0aC5vIHJlcGxpY2F0 b3IubyBjbGFzc2lmaWVyLW1hYy5vIGFwcC5vIHRlbG5ldC5vIHRjcGxpYi10ZWxuZXQubyB0cmFm Z2VuLm8gdHJhZmZpY3RyYWNlLm8gcGFyZXRvLm8gZXhwb28ubyBjYnJfdHJhZmZpYy5vIHRiZi5v IHJlc3YubyBzYS5vIHNhYWNrLm8gbWVhc3VyZW1vZC5vIGVzdGltYXRvci5vIGFkYy5vIG1zLWFk Yy5vIHRpbWV3aW5kb3ctZXN0Lm8gYWN0by1hZGMubyBwb2ludHNhbXBsZS1lc3QubyBzYWxpbmsu byBhY3RwLWFkYy5vIGhiLWFkYy5vIGV4cGF2Zy1lc3QubyBwYXJhbS1hZGMubyBudWxsLWVzdGlt YXRvci5vIGFkYXB0aXZlLXJlY2VpdmVyLm8gdmF0cmN2ci5vIGNvbnNyY3ZyLm8gYWdlbnQubyBt ZXNzYWdlLm8gdWRwLm8gc2Vzc2lvbi1ydHAubyBydHAubyBydGNwLm8gaXZzLm8gdGNwLm8gdGNw LXNpbmsubyB0Y3AtcmVuby5vIHRjcC1uZXdyZW5vLm8gdGNwLXZlZ2FzLm8gdGNwLXJicC5vIHRj cC1mdWxsLm8gc2NvcmVib2FyZC5vIHRjcC1zYWNrMS5vIHRjcC1mYWNrLm8gdGNwLWFzeW0ubyB0 Y3AtYXN5bS1zaW5rLm8gdGNwLWZzLm8gdGNwLWFzeW0tZnMubyB0Y3AtaW50Lm8gY2hvc3QubyB0 Y3Atc2Vzc2lvbi5vIG5pbGlzdC5vIGludGVncmF0b3IubyBxdWV1ZS1tb25pdG9yLm8gZmxvd21v bi5vIGxvc3MtbW9uaXRvci5vIHF1ZXVlLm8gZHJvcC10YWlsLm8gc2ltcGxlLWludHNlcnYtc2No ZWQubyByZWQubyBzZW1hbnRpYy1wYWNrZXRxdWV1ZS5vIHNlbWFudGljLXJlZC5vIGFjay1yZWNv bnMubyBzZnEubyBmcS5vIGRyci5vIGNicS5vIGhhY2tsb3NzLm8gZXJybW9kZWwubyBkZWxheS5v IGxsLm8gc25vb3AubyBjaGFubmVsLm8gbWFjLm8gbWFjLWNzbWEubyBtYWMtODAyXzExLm8gbWFj LW11bHRpaG9wLm8gZHluYWxpbmsubyBydFByb3RvRFYubyBuZXQtaW50ZXJmYWNlLm8gY3RyTWNh c3QubyBtY2FzdF9jdHJsLm8gc3JtLm8gc2Vzc2lvbmhlbHBlci5vIGRlbGF5bW9kZWwubyBzcm0t c3NtLm8gc3JtLXRvcG8ubyBhbGxvYy1hZGRyZXNzLm8gYWRkcmVzcy5vIGxpYi9pbnQuVmVjLm8g bGliL2ludC5SVmVjLm8gbGliL2RtYWxsb2Nfc3VwcG9ydC5vIHdlYmNhY2hlL2h0dHAubyB3ZWJj YWNoZS90Y3Atc2ltcGxlLm8gd2ViY2FjaGUvcGFnZXBvb2wubyB3ZWJjYWNoZS9pbnZhbC1hZ2Vu dC5vIHdlYmNhY2hlL3RjcGFwcC5vIHdlYmNhY2hlL2h0dHAtYXV4Lm8gbGFuUm91dGVyLm8gdGZj Yy5vIGZpbHRlci5vIGdlbi92ZXJzaW9uLm8gZ2VuL25zX3RjbC5vICB3aW4zMi5vIC1SLi4vdGNs Y2wgLUwuLi90Y2xjbCAtbHRjbGNsIC1SLi4vb3RjbCAtTC4uL290Y2wgLWxvdGNsIC1SL3Vzci9s b2NhbC9saWIgLUwvdXNyL2xvY2FsL2xpYiAtbHRrOC4wIC1SL3Vzci9sb2NhbC9saWIgLUwvdXNy L2xvY2FsL2xpYiAtbHRjbDguMCAtUi91c3Ivb3Blbndpbi9saWIgLUwvdXNyL29wZW53aW4vbGli IC1sWGV4dCAtbFgxMSAtbHNvY2tldCAtbG5zbCAtbGRsIC1sZGwgLWxtIC1sZGwgDQpVbmRlZmlu ZWQgICAgICAgICAgICAgICAgICAgICAgIGZpcnN0IHJlZmVyZW5jZWQNCiBzeW1ib2wgICAgICAg ICAgICAgICAgICAgICAgICAgICAgIGluIGZpbGUNCnNucHJpbnRmICAgICAgICAgICAgICAgICAg ICAgICAgICAgIC4uL3RjbGNsL2xpYnRjbGNsLmEoVGNsLm8pDQpsZDogZmF0YWw6IFN5bWJvbCBy ZWZlcmVuY2luZyBlcnJvcnMuIE5vIG91dHB1dCB3cml0dGVuIHRvIG5zDQptYWtlOiAqKiogW25z XSBFcnJvciAxDQoNCkJlc3QgUmVnYXJkcw0KIA0KDQoNCg== ------=_NextPart_000_002C_01BE6550.313FB3C0 Content-Type: text/html; charset="euc-kr" Content-Transfer-Encoding: base64 PCFET0NUWVBFIEhUTUwgUFVCTElDICItLy9XM0MvL0RURCBXMyBIVE1MLy9FTiI+DQo8SFRNTD4N CjxIRUFEPg0KDQo8TUVUQSBjb250ZW50PSJ0ZXh0L2h0bWw7IGNoYXJzZXQ9a3NfY181NjAxLTE5 ODciIGh0dHAtZXF1aXY9Q29udGVudC1UeXBlPg0KPE1FVEEgY29udGVudD0nIk1TSFRNTCA0Ljcy LjMxMTAuNyInIG5hbWU9R0VORVJBVE9SPg0KPC9IRUFEPg0KPEJPRFkgYmdDb2xvcj0jZmZmZmZm Pg0KPERJVj48Rk9OVCBjb2xvcj0jMDAwMDAwIHNpemU9Mj5IZWxsbyAhPC9GT05UPjwvRElWPg0K PERJVj48Rk9OVCBjb2xvcj0jMDAwMDAwIHNpemU9Mj48L0ZPTlQ+Jm5ic3A7PC9ESVY+DQo8RElW PiZuYnNwOzwvRElWPg0KPERJVj48Rk9OVCBjb2xvcj0jMDAwMDAwIHNpemU9Mj5bcHJpc206L3Vz ci9sb2NhbC9ucy1hbGxpbm9uZS0yLjFiNGEvbnMtMl0jIA0KbWFrZTxCUj5jKysmbmJzcDsgLW8g bnMgXDxCUj4mbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsgDQp0Y2xB cHBJbml0Lm8mbmJzcDsgcmFuZG9tLm8gcm5nLm8gcmFudmFyLm8gbWlzYy5vIHRpbWVyLWhhbmRs ZXIubyBzY2hlZHVsZXIubyANCm9iamVjdC5vIHBhY2tldC5vIGlwLm8gcm91dGUubyBjb25uZWN0 b3IubyB0dGwubyB0cmFjZS5vIHRyYWNlLWlwLm8gY2xhc3NpZmllci5vIA0KY2xhc3NpZmllci1h ZGRyLm8gY2xhc3NpZmllci1oYXNoLm8gY2xhc3NpZmllci12aXJ0dWFsLm8gY2xhc3NpZmllci1t Y2FzdC5vIA0KY2xhc3NpZmllci1tcGF0aC5vIHJlcGxpY2F0b3IubyBjbGFzc2lmaWVyLW1hYy5v IGFwcC5vIHRlbG5ldC5vIHRjcGxpYi10ZWxuZXQubyANCnRyYWZnZW4ubyB0cmFmZmljdHJhY2Uu byBwYXJldG8ubyBleHBvby5vIGNicl90cmFmZmljLm8gdGJmLm8gcmVzdi5vIHNhLm8gDQpzYWFj ay5vIG1lYXN1cmVtb2QubyBlc3RpbWF0b3IubyBhZGMubyBtcy1hZGMubyB0aW1ld2luZG93LWVz dC5vIGFjdG8tYWRjLm8gDQpwb2ludHNhbXBsZS1lc3QubyBzYWxpbmsubyBhY3RwLWFkYy5vIGhi LWFkYy5vIGV4cGF2Zy1lc3QubyBwYXJhbS1hZGMubyANCm51bGwtZXN0aW1hdG9yLm8gYWRhcHRp dmUtcmVjZWl2ZXIubyB2YXRyY3ZyLm8gY29uc3JjdnIubyBhZ2VudC5vIG1lc3NhZ2UubyANCnVk cC5vIHNlc3Npb24tcnRwLm8gcnRwLm8gcnRjcC5vIGl2cy5vIHRjcC5vIHRjcC1zaW5rLm8gdGNw LXJlbm8ubyB0Y3AtbmV3cmVuby5vIA0KdGNwLXZlZ2FzLm8gdGNwLXJicC5vIHRjcC1mdWxsLm8g c2NvcmVib2FyZC5vIHRjcC1zYWNrMS5vIHRjcC1mYWNrLm8gdGNwLWFzeW0ubyANCnRjcC1hc3lt LXNpbmsubyB0Y3AtZnMubyB0Y3AtYXN5bS1mcy5vIHRjcC1pbnQubyBjaG9zdC5vIHRjcC1zZXNz aW9uLm8gbmlsaXN0Lm8gDQppbnRlZ3JhdG9yLm8gcXVldWUtbW9uaXRvci5vIGZsb3dtb24ubyBs b3NzLW1vbml0b3IubyBxdWV1ZS5vIGRyb3AtdGFpbC5vIA0Kc2ltcGxlLWludHNlcnYtc2NoZWQu byByZWQubyBzZW1hbnRpYy1wYWNrZXRxdWV1ZS5vIHNlbWFudGljLXJlZC5vIGFjay1yZWNvbnMu byANCnNmcS5vIGZxLm8gZHJyLm8gY2JxLm8gaGFja2xvc3MubyBlcnJtb2RlbC5vIGRlbGF5Lm8g bGwubyBzbm9vcC5vIGNoYW5uZWwubyANCm1hYy5vIG1hYy1jc21hLm8gbWFjLTgwMl8xMS5vIG1h Yy1tdWx0aWhvcC5vIGR5bmFsaW5rLm8gcnRQcm90b0RWLm8gDQpuZXQtaW50ZXJmYWNlLm8gY3Ry TWNhc3QubyBtY2FzdF9jdHJsLm8gc3JtLm8gc2Vzc2lvbmhlbHBlci5vIGRlbGF5bW9kZWwubyAN CnNybS1zc20ubyBzcm0tdG9wby5vIGFsbG9jLWFkZHJlc3MubyBhZGRyZXNzLm8gbGliL2ludC5W ZWMubyBsaWIvaW50LlJWZWMubyANCmxpYi9kbWFsbG9jX3N1cHBvcnQubyB3ZWJjYWNoZS9odHRw Lm8gd2ViY2FjaGUvdGNwLXNpbXBsZS5vIHdlYmNhY2hlL3BhZ2Vwb29sLm8gDQp3ZWJjYWNoZS9p bnZhbC1hZ2VudC5vIHdlYmNhY2hlL3RjcGFwcC5vIHdlYmNhY2hlL2h0dHAtYXV4Lm8gbGFuUm91 dGVyLm8gdGZjYy5vIA0KZmlsdGVyLm8gZ2VuL3ZlcnNpb24ubyBnZW4vbnNfdGNsLm8mbmJzcDsg d2luMzIubyAtUi4uL3RjbGNsIC1MLi4vdGNsY2wgLWx0Y2xjbCANCi1SLi4vb3RjbCAtTC4uL290 Y2wgLWxvdGNsIC1SL3Vzci9sb2NhbC9saWIgLUwvdXNyL2xvY2FsL2xpYiAtbHRrOC4wIA0KLVIv dXNyL2xvY2FsL2xpYiAtTC91c3IvbG9jYWwvbGliIC1sdGNsOC4wIC1SL3Vzci9vcGVud2luL2xp YiAtTC91c3Ivb3Blbndpbi9saWIgDQotbFhleHQgLWxYMTEgLWxzb2NrZXQgLWxuc2wgLWxkbCAt bGRsIC1sbSAtbGRsIA0KPEJSPjxTVFJPTkc+VW5kZWZpbmVkJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5i c3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7 Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7IA0K Zmlyc3QgDQpyZWZlcmVuY2VkPEJSPiZuYnNwO3N5bWJvbCZuYnNwOyZuYnNwOyZuYnNwOyZuYnNw OyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZu YnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNw OyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyANCmluIA0KZmlsZTxCUj5zbnByaW50ZiZu YnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNw OyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZu YnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyANCi4uL3RjbGNs L2xpYnRjbGNsLmEoVGNsLm8pPEJSPmxkOiBmYXRhbDogU3ltYm9sIHJlZmVyZW5jaW5nIGVycm9y cy4gTm8gb3V0cHV0IA0Kd3JpdHRlbiB0byBuczxCUj5tYWtlOiAqKiogW25zXSBFcnJvciAxPEJS PjwvU1RST05HPjwvRk9OVD48L0RJVj4NCjxESVY+QmVzdCBSZWdhcmRzPC9ESVY+DQo8RElWPjxG T05UIHNpemU9Mj4mbmJzcDs8L0ZPTlQ+PC9ESVY+DQo8RElWPiZuYnNwOzwvRElWPg0KPERJVj48 Rk9OVCBjb2xvcj0jMDAwMDAwIA0Kc2l6ZT0yPjxTVFJPTkc+PC9TVFJPTkc+PC9GT05UPiZuYnNw OzwvRElWPjwvQk9EWT48L0hUTUw+DQo= ------=_NextPart_000_002C_01BE6550.313FB3C0-- From johnh@ISI.EDU Tue Mar 2 23:45:45 1999 From: johnh@ISI.EDU (John Heidemann) Date: Tue, 02 Mar 1999 15:45:45 -0800 Subject: ld error In-Reply-To: <002f01be6550$317b3620$5bc0fe81@pony.etri.re.kr> Message-ID: <199903022345.PAA26452@dash.isi.edu> On Wed, 03 Mar 1999 08:31:10 GMT, "hyryu" wrote: >Hello ! > > >[prism:/usr/local/ns-allinone-2.1b4a/ns-2]# make >c++ -o ns \ >... >Undefined first referenced > symbol in file >snprintf ../tclcl/libtclcl.a(Tcl.o) >ld: fatal: Symbol referencing errors. No output written to ns >make: *** [ns] Error 1 > >Best Regards > > >  -=- MIME -=-  This is a multi-part message in MIME format. ------=_NextPart_000_002C_01BE6550.313FB3C0 Content-Type: text/plain; charset="euc-kr" Content-Transfer-Encoding: base64 SGVsbG8gIQ0KDQoNCltwcmlzbTovdXNyL2xvY2FsL25zLWFsbGlub25lLTIuMWI0YS9ucy0yXSMg bWFrZQ0KYysrICAtbyBucyBcDQogICAgICAgIHRjbEFwcEluaXQubyAgcmFuZG9tLm8gcm5nLm8g cmFudmFyLm8gbWlzYy5vIHRpbWVyLWhhbmRsZXIubyBzY2hlZHVsZXIubyBvYmplY3QubyBwYWNr ZXQubyBpcC5vIHJvdXRlLm8gY29ubmVjdG9yLm8gdHRsLm8gdHJhY2UubyB0cmFjZS1pcC5vIGNs YXNzaWZpZXIubyBjbGFzc2lmaWVyLWFkZHIubyBjbGFzc2lmaWVyLWhhc2gubyBjbGFzc2lmaWVy LXZpcnR1YWwubyBjbGFzc2lmaWVyLW1jYXN0Lm8gY2xhc3NpZmllci1tcGF0aC5vIHJlcGxpY2F0 b3IubyBjbGFzc2lmaWVyLW1hYy5vIGFwcC5vIHRlbG5ldC5vIHRjcGxpYi10ZWxuZXQubyB0cmFm Z2VuLm8gdHJhZmZpY3RyYWNlLm8gcGFyZXRvLm8gZXhwb28ubyBjYnJfdHJhZmZpYy5vIHRiZi5v IHJlc3YubyBzYS5vIHNhYWNrLm8gbWVhc3VyZW1vZC5vIGVzdGltYXRvci5vIGFkYy5vIG1zLWFk Yy5vIHRpbWV3aW5kb3ctZXN0Lm8gYWN0by1hZGMubyBwb2ludHNhbXBsZS1lc3QubyBzYWxpbmsu byBhY3RwLWFkYy5vIGhiLWFkYy5vIGV4cGF2Zy1lc3QubyBwYXJhbS1hZGMubyBudWxsLWVzdGlt YXRvci5vIGFkYXB0aXZlLXJlY2VpdmVyLm8gdmF0cmN2ci5vIGNvbnNyY3ZyLm8gYWdlbnQubyBt ZXNzYWdlLm8gdWRwLm8gc2Vzc2lvbi1ydHAubyBydHAubyBydGNwLm8gaXZzLm8gdGNwLm8gdGNw LXNpbmsubyB0Y3AtcmVuby5vIHRjcC1uZXdyZW5vLm8gdGNwLXZlZ2FzLm8gdGNwLXJicC5vIHRj cC1mdWxsLm8gc2NvcmVib2FyZC5vIHRjcC1zYWNrMS5vIHRjcC1mYWNrLm8gdGNwLWFzeW0ubyB0 Y3AtYXN5bS1zaW5rLm8gdGNwLWZzLm8gdGNwLWFzeW0tZnMubyB0Y3AtaW50Lm8gY2hvc3QubyB0 Y3Atc2Vzc2lvbi5vIG5pbGlzdC5vIGludGVncmF0b3IubyBxdWV1ZS1tb25pdG9yLm8gZmxvd21v bi5vIGxvc3MtbW9uaXRvci5vIHF1ZXVlLm8gZHJvcC10YWlsLm8gc2ltcGxlLWludHNlcnYtc2No ZWQubyByZWQubyBzZW1hbnRpYy1wYWNrZXRxdWV1ZS5vIHNlbWFudGljLXJlZC5vIGFjay1yZWNv bnMubyBzZnEubyBmcS5vIGRyci5vIGNicS5vIGhhY2tsb3NzLm8gZXJybW9kZWwubyBkZWxheS5v IGxsLm8gc25vb3AubyBjaGFubmVsLm8gbWFjLm8gbWFjLWNzbWEubyBtYWMtODAyXzExLm8gbWFj LW11bHRpaG9wLm8gZHluYWxpbmsubyBydFByb3RvRFYubyBuZXQtaW50ZXJmYWNlLm8gY3RyTWNh c3QubyBtY2FzdF9jdHJsLm8gc3JtLm8gc2Vzc2lvbmhlbHBlci5vIGRlbGF5bW9kZWwubyBzcm0t c3NtLm8gc3JtLXRvcG8ubyBhbGxvYy1hZGRyZXNzLm8gYWRkcmVzcy5vIGxpYi9pbnQuVmVjLm8g bGliL2ludC5SVmVjLm8gbGliL2RtYWxsb2Nfc3VwcG9ydC5vIHdlYmNhY2hlL2h0dHAubyB3ZWJj YWNoZS90Y3Atc2ltcGxlLm8gd2ViY2FjaGUvcGFnZXBvb2wubyB3ZWJjYWNoZS9pbnZhbC1hZ2Vu dC5vIHdlYmNhY2hlL3RjcGFwcC5vIHdlYmNhY2hlL2h0dHAtYXV4Lm8gbGFuUm91dGVyLm8gdGZj Yy5vIGZpbHRlci5vIGdlbi92ZXJzaW9uLm8gZ2VuL25zX3RjbC5vICB3aW4zMi5vIC1SLi4vdGNs Y2wgLUwuLi90Y2xjbCAtbHRjbGNsIC1SLi4vb3RjbCAtTC4uL290Y2wgLWxvdGNsIC1SL3Vzci9s b2NhbC9saWIgLUwvdXNyL2xvY2FsL2xpYiAtbHRrOC4wIC1SL3Vzci9sb2NhbC9saWIgLUwvdXNy L2xvY2FsL2xpYiAtbHRjbDguMCAtUi91c3Ivb3Blbndpbi9saWIgLUwvdXNyL29wZW53aW4vbGli IC1sWGV4dCAtbFgxMSAtbHNvY2tldCAtbG5zbCAtbGRsIC1sZGwgLWxtIC1sZGwgDQpVbmRlZmlu ZWQgICAgICAgICAgICAgICAgICAgICAgIGZpcnN0IHJlZmVyZW5jZWQNCiBzeW1ib2wgICAgICAg ICAgICAgICAgICAgICAgICAgICAgIGluIGZpbGUNCnNucHJpbnRmICAgICAgICAgICAgICAgICAg ICAgICAgICAgIC4uL3RjbGNsL2xpYnRjbGNsLmEoVGNsLm8pDQpsZDogZmF0YWw6IFN5bWJvbCBy ZWZlcmVuY2luZyBlcnJvcnMuIE5vIG91dHB1dCB3cml0dGVuIHRvIG5zDQptYWtlOiAqKiogW25z XSBFcnJvciAxDQoNCkJlc3QgUmVnYXJkcw0KIA0KDQoNCg== ------=_NextPart_000_002C_01BE6550.313FB3C0 Content-Type: text/html; charset="euc-kr" Content-Transfer-Encoding: base64 PCFET0NUWVBFIEhUTUwgUFVCTElDICItLy9XM0MvL0RURCBXMyBIVE1MLy9FTiI+DQo8SFRNTD4N CjxIRUFEPg0KDQo8TUVUQSBjb250ZW50PSJ0ZXh0L2h0bWw7IGNoYXJzZXQ9a3NfY181NjAxLTE5 ODciIGh0dHAtZXF1aXY9Q29udGVudC1UeXBlPg0KPE1FVEEgY29udGVudD0nIk1TSFRNTCA0Ljcy LjMxMTAuNyInIG5hbWU9R0VORVJBVE9SPg0KPC9IRUFEPg0KPEJPRFkgYmdDb2xvcj0jZmZmZmZm Pg0KPERJVj48Rk9OVCBjb2xvcj0jMDAwMDAwIHNpemU9Mj5IZWxsbyAhPC9GT05UPjwvRElWPg0K PERJVj48Rk9OVCBjb2xvcj0jMDAwMDAwIHNpemU9Mj48L0ZPTlQ+Jm5ic3A7PC9ESVY+DQo8RElW PiZuYnNwOzwvRElWPg0KPERJVj48Rk9OVCBjb2xvcj0jMDAwMDAwIHNpemU9Mj5bcHJpc206L3Vz ci9sb2NhbC9ucy1hbGxpbm9uZS0yLjFiNGEvbnMtMl0jIA0KbWFrZTxCUj5jKysmbmJzcDsgLW8g bnMgXDxCUj4mbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsgDQp0Y2xB cHBJbml0Lm8mbmJzcDsgcmFuZG9tLm8gcm5nLm8gcmFudmFyLm8gbWlzYy5vIHRpbWVyLWhhbmRs ZXIubyBzY2hlZHVsZXIubyANCm9iamVjdC5vIHBhY2tldC5vIGlwLm8gcm91dGUubyBjb25uZWN0 b3IubyB0dGwubyB0cmFjZS5vIHRyYWNlLWlwLm8gY2xhc3NpZmllci5vIA0KY2xhc3NpZmllci1h ZGRyLm8gY2xhc3NpZmllci1oYXNoLm8gY2xhc3NpZmllci12aXJ0dWFsLm8gY2xhc3NpZmllci1t Y2FzdC5vIA0KY2xhc3NpZmllci1tcGF0aC5vIHJlcGxpY2F0b3IubyBjbGFzc2lmaWVyLW1hYy5v IGFwcC5vIHRlbG5ldC5vIHRjcGxpYi10ZWxuZXQubyANCnRyYWZnZW4ubyB0cmFmZmljdHJhY2Uu byBwYXJldG8ubyBleHBvby5vIGNicl90cmFmZmljLm8gdGJmLm8gcmVzdi5vIHNhLm8gDQpzYWFj ay5vIG1lYXN1cmVtb2QubyBlc3RpbWF0b3IubyBhZGMubyBtcy1hZGMubyB0aW1ld2luZG93LWVz dC5vIGFjdG8tYWRjLm8gDQpwb2ludHNhbXBsZS1lc3QubyBzYWxpbmsubyBhY3RwLWFkYy5vIGhi LWFkYy5vIGV4cGF2Zy1lc3QubyBwYXJhbS1hZGMubyANCm51bGwtZXN0aW1hdG9yLm8gYWRhcHRp dmUtcmVjZWl2ZXIubyB2YXRyY3ZyLm8gY29uc3JjdnIubyBhZ2VudC5vIG1lc3NhZ2UubyANCnVk cC5vIHNlc3Npb24tcnRwLm8gcnRwLm8gcnRjcC5vIGl2cy5vIHRjcC5vIHRjcC1zaW5rLm8gdGNw LXJlbm8ubyB0Y3AtbmV3cmVuby5vIA0KdGNwLXZlZ2FzLm8gdGNwLXJicC5vIHRjcC1mdWxsLm8g c2NvcmVib2FyZC5vIHRjcC1zYWNrMS5vIHRjcC1mYWNrLm8gdGNwLWFzeW0ubyANCnRjcC1hc3lt LXNpbmsubyB0Y3AtZnMubyB0Y3AtYXN5bS1mcy5vIHRjcC1pbnQubyBjaG9zdC5vIHRjcC1zZXNz aW9uLm8gbmlsaXN0Lm8gDQppbnRlZ3JhdG9yLm8gcXVldWUtbW9uaXRvci5vIGZsb3dtb24ubyBs b3NzLW1vbml0b3IubyBxdWV1ZS5vIGRyb3AtdGFpbC5vIA0Kc2ltcGxlLWludHNlcnYtc2NoZWQu byByZWQubyBzZW1hbnRpYy1wYWNrZXRxdWV1ZS5vIHNlbWFudGljLXJlZC5vIGFjay1yZWNvbnMu byANCnNmcS5vIGZxLm8gZHJyLm8gY2JxLm8gaGFja2xvc3MubyBlcnJtb2RlbC5vIGRlbGF5Lm8g bGwubyBzbm9vcC5vIGNoYW5uZWwubyANCm1hYy5vIG1hYy1jc21hLm8gbWFjLTgwMl8xMS5vIG1h Yy1tdWx0aWhvcC5vIGR5bmFsaW5rLm8gcnRQcm90b0RWLm8gDQpuZXQtaW50ZXJmYWNlLm8gY3Ry TWNhc3QubyBtY2FzdF9jdHJsLm8gc3JtLm8gc2Vzc2lvbmhlbHBlci5vIGRlbGF5bW9kZWwubyAN CnNybS1zc20ubyBzcm0tdG9wby5vIGFsbG9jLWFkZHJlc3MubyBhZGRyZXNzLm8gbGliL2ludC5W ZWMubyBsaWIvaW50LlJWZWMubyANCmxpYi9kbWFsbG9jX3N1cHBvcnQubyB3ZWJjYWNoZS9odHRw Lm8gd2ViY2FjaGUvdGNwLXNpbXBsZS5vIHdlYmNhY2hlL3BhZ2Vwb29sLm8gDQp3ZWJjYWNoZS9p bnZhbC1hZ2VudC5vIHdlYmNhY2hlL3RjcGFwcC5vIHdlYmNhY2hlL2h0dHAtYXV4Lm8gbGFuUm91 dGVyLm8gdGZjYy5vIA0KZmlsdGVyLm8gZ2VuL3ZlcnNpb24ubyBnZW4vbnNfdGNsLm8mbmJzcDsg d2luMzIubyAtUi4uL3RjbGNsIC1MLi4vdGNsY2wgLWx0Y2xjbCANCi1SLi4vb3RjbCAtTC4uL290 Y2wgLWxvdGNsIC1SL3Vzci9sb2NhbC9saWIgLUwvdXNyL2xvY2FsL2xpYiAtbHRrOC4wIA0KLVIv dXNyL2xvY2FsL2xpYiAtTC91c3IvbG9jYWwvbGliIC1sdGNsOC4wIC1SL3Vzci9vcGVud2luL2xp YiAtTC91c3Ivb3Blbndpbi9saWIgDQotbFhleHQgLWxYMTEgLWxzb2NrZXQgLWxuc2wgLWxkbCAt bGRsIC1sbSAtbGRsIA0KPEJSPjxTVFJPTkc+VW5kZWZpbmVkJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5i c3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7 Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7IA0K Zmlyc3QgDQpyZWZlcmVuY2VkPEJSPiZuYnNwO3N5bWJvbCZuYnNwOyZuYnNwOyZuYnNwOyZuYnNw OyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZu YnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNw OyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyANCmluIA0KZmlsZTxCUj5zbnByaW50ZiZu YnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNw OyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZu YnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyANCi4uL3RjbGNs L2xpYnRjbGNsLmEoVGNsLm8pPEJSPmxkOiBmYXRhbDogU3ltYm9sIHJlZmVyZW5jaW5nIGVycm9y cy4gTm8gb3V0cHV0IA0Kd3JpdHRlbiB0byBuczxCUj5tYWtlOiAqKiogW25zXSBFcnJvciAxPEJS PjwvU1RST05HPjwvRk9OVD48L0RJVj4NCjxESVY+QmVzdCBSZWdhcmRzPC9ESVY+DQo8RElWPjxG T05UIHNpemU9Mj4mbmJzcDs8L0ZPTlQ+PC9ESVY+DQo8RElWPiZuYnNwOzwvRElWPg0KPERJVj48 Rk9OVCBjb2xvcj0jMDAwMDAwIA0Kc2l6ZT0yPjxTVFJPTkc+PC9TVFJPTkc+PC9GT05UPiZuYnNw OzwvRElWPjwvQk9EWT48L0hUTUw+DQo= ------=_NextPart_000_002C_01BE6550.313FB3C0-- Snprintf is needed as the error message says in tclcl. Part of the tclcl configure process should see if your system has it and use the provided definition if not. See the HAVE_SNPRINTF ifdefs. What platform are you running on? Can you look at tclcl's configure script to see why it thought that you had snprintf when you don't? You can work around the problem by setting HAVE_SNPRINTF, but it would be nice to know why configure fails on your system when it work on ours. -John Heidemann From david@melbourneit.com.au Wed Mar 3 04:17:27 1999 From: david@melbourneit.com.au (David Lapsley) Date: Wed, 3 Mar 1999 15:17:27 +1100 Subject: TCP RTT esimates Message-ID: <99030315342004.26124@defiant.melbourneit.com.au> Dear All, I've been looking at the source code for the TCP Agent in tcp.cc and something does not seem right. I would appreciate any help. The lines that confuse me are: if (t_srtt_ != 0) { register short delta; >>>> delta = t_rtt_ - (t_srtt_ >> T_SRTT_BITS); // d = (m - a0) if ((t_srtt_ += delta) <= 0) // a1 = 7/8 a0 + 1/8 m t_srtt_ = 1; Where t_srtt_ is the smoothed(average) round trip time, and t_rtt_ is the current round trip time sample. According to this code, the final value of t_srtt_ is 7/8 of the previous t_srtt_ + the new round trip time sample t_rtt_. It should be 7/8 of the previous t_srtt_ + 1/8 of rtt_. If the marked line above read: >>>> delta = (t_rtt_ - t_srtt_ )>> T_SRTT_BITS; // d = (m - a0) Am I missing something embarassingly obvious? If so, please let me know. I apologize if this has already been discussed, but I have done a (quick) search through the mailing list archives. Thanks in advance, David. -- David Lapsley, Research Engineer Melbourne Information Technologies Australia Pty. Ltd. 3/207 Bouverie Street, Carlton, Vic. 3053, Australia Telephone: +61 3 9344 9386, Facsimile: +61 3 9347 9473 From vishnu@cs.ucr.edu Wed Mar 3 05:02:44 1999 From: vishnu@cs.ucr.edu (Natchu Vishnu Priya) Date: Tue, 2 Mar 1999 21:02:44 -0800 (PST) Subject: TCP RTT esimates In-Reply-To: <99030315342004.26124@defiant.melbourneit.com.au> Message-ID: On Wed, 3 Mar 1999, David Lapsley wrote: > Dear All, > > I've been looking at the source code for the TCP Agent > in tcp.cc and something does not seem right. > I would appreciate any help. > > The lines that confuse me are: > > if (t_srtt_ != 0) { > register short delta; > >>>> delta = t_rtt_ - (t_srtt_ >> T_SRTT_BITS); // d = (m - a0) > if ((t_srtt_ += delta) <= 0) // a1 = 7/8 a0 + 1/8 m > t_srtt_ = 1; > > Where t_srtt_ is the smoothed(average) round trip time, and t_rtt_ is the > current round trip time sample. > > According to this code, the final value of t_srtt_ is 7/8 of the previous > t_srtt_ + the new round trip time sample t_rtt_. It should be 7/8 of the > previous t_srtt_ + 1/8 of rtt_. t_srtt_ is 8 * "smoothed round trip time" its easier to maintain it that way.. a little more presicion and less shifts. vishnu From p.losi@netline.it Wed Mar 3 07:40:25 1999 From: p.losi@netline.it (Paolo Losi) Date: Wed, 03 Mar 1999 07:40:25 +0000 Subject: PGPS code Message-ID: <36DCE769.7C8EE391@netline.it> This is a message for everyone interested in the PGPS code. I'm asking for a permission to distribute the code and building up a web page. I'll send a message to the mailing-list by the end of the week to give some more info. Thanks Paolo Paolo Losi p.losi@netline.it From thlinh@dit.hcmut.edu.vn Wed Mar 3 16:48:55 1999 From: thlinh@dit.hcmut.edu.vn (Truong Hong Linh) Date: Wed, 3 Mar 1999 16:48:55 -0000 Subject: Can not download software Message-ID: <000701be6595$bab7e920$2c0a1cac@thlinh.dit.hcmut.edu.vn> This is a multi-part message in MIME format. ------=_NextPart_000_0004_01BE6595.BA20D940 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: quoted-printable Hi all ! I am can not download your software from this link : Download source: current release 2.1b4a (released 19-Nov-98)=20 I don't know what happen.Can you help me ? I am looking forward you ! Truong Hong Linh Lecturer , IT Department. HCMC University of Technology, VietNam ------=_NextPart_000_0004_01BE6595.BA20D940 Content-Type: text/html; charset="iso-8859-1" Content-Transfer-Encoding: quoted-printable
Hi all !
I am can not download your software = from this=20 link :
       =20 Download source: current=20 release 2.1b4a (released 19-Nov-98)
I don't know what happen.Can you = help me=20 ?
 
I am looking forward you = !
 
Truong Hong Linh
Lecturer , IT = Department.
HCMC University of Technology,=20 VietNam
------=_NextPart_000_0004_01BE6595.BA20D940-- From eroesch@iutsud.u-strasbg.fr Wed Mar 3 12:44:32 1999 From: eroesch@iutsud.u-strasbg.fr (eroesch@iutsud.u-strasbg.fr) Date: Wed, 03 Mar 1999 13:44:32 +0100 Subject: [ns] Adding new protocols.. Message-ID: <3.0.1.32.19990303134432.00934e60@iutsud.u-strasbg.fr> Hello ! I am a french national studying in the second year at the University of Technology in Strasbourg, in Computer Sciences, and study ns as part of a final project. I tried to implement new protocols (ie. ping), as described in the tutorial .. but it doesn't work .. :( It compils, but nothing is sent .. i think it is a matter of the inheritance of the classes used by ns .. Has anyone ever tried to implement new protocols ? Ooops, I don't have my sources .. i will send them tomorow ;) Thanks in advance ----- Etienne From maria@cs.columbia.edu Wed Mar 3 15:16:38 1999 From: maria@cs.columbia.edu (Maria Papadopouli) Date: Wed, 3 Mar 1999 10:16:38 -0500 (EST) Subject: Metricom's Ricochet Modem: link delay/bandwidth capabilities ? Message-ID: <199903031516.KAA14194@merlot.cs.columbia.edu> Hello, I would like to do some simulations in which some of the links are Metricom's Ricochet, and I was wondering what would be a reasonable estimation for the link delays and bandwidth capabilities of this modem (and if there are predictions/info for the next generation Ricochet modem). Unfortunately I don't have a Ricochet modem to test it, so I was wondering if you could give me some references. I saw that in the ns-2 simulator, you have the following setup (for the MAC layer) . However, in some other papers, they mention different numbers for link delays and bw for the Ricochet modem, (e.g.,, an "actual" estimation of the roundtrip delay to be around 325ms). I understand that it is difficult to capture the wireless connection, since there are all these different parameters and conditions that could affect the performance, but if we simulate the connection of a Ricochet user as a link, would it be reasonable to use for bandwidth=100Kb and link delay 100ms ? Thanks for your consideration, Maria From sva0392@tntech.edu Wed Mar 3 15:27:46 1999 From: sva0392@tntech.edu (Syamsundar V Appala) Date: Wed, 03 Mar 1999 09:27:46 -0600 (CST) Subject: Packet losses in SRM ? Message-ID: Hi Everybody, How can you monitor the packets received or lost by a SRM receiver. The log file and trace files of SRM doesn't provide that information . Please let me.I'll appreciate the help. Thanks Sincerely, SYam Appala ----------------------------------------------------------------------------- I arise in the morning torn between a desire to improve the world and a desire to enjoy the world. This makes it hard to plan the day. -- E. B. White ----------------------------------------------------------------------------- Put your hand on a hot stove for a minute, and it seems like an hour. Sit with a pretty girl for an hour, and it seems like a minute. THAT's relativity." -- Albert Einstein ----------------------------------------------------------------------------- ..::''''::.. .;'' ``;. :: :: :: :: :: :: :: :: :: .:' :: :: `:. :: :: : : :: :: `:. .:' :: `;..``::::''..;' ``::,,,,::'' From yuri@who.isi.edu Wed Mar 3 17:21:37 1999 From: yuri@who.isi.edu (Yuri Pryadkin) Date: 03 Mar 1999 09:21:37 -0800 Subject: TCP RTT esimates In-Reply-To: Natchu Vishnu Priya's message of "Tue, 2 Mar 1999 21:02:44 -0800 (PST)" References: Message-ID: > > if (t_srtt_ != 0) { > > register short delta; > > >>>> delta = t_rtt_ - (t_srtt_ >> T_SRTT_BITS); // d = (m - a0) > > if ((t_srtt_ += delta) <= 0) // a1 = 7/8 a0 + 1/8 m > > t_srtt_ = 1; > > > > Where t_srtt_ is the smoothed(average) round trip time, and t_rtt_ is the > > current round trip time sample. > > > > According to this code, the final value of t_srtt_ is 7/8 of the previous > > t_srtt_ + the new round trip time sample t_rtt_. It should be 7/8 of the > > previous t_srtt_ + 1/8 of rtt_. > > t_srtt_ is 8 * "smoothed round trip time" > its easier to maintain it that way.. a little more presicion and less > shifts. BTW, it doesn't seem necessary to check if (t_srtt_+= delta) <= 0. From Dah Ming Chiu - Sun Microsystems Wed Mar 3 18:03:59 1999 From: Dah Ming Chiu - Sun Microsystems (Dah Ming Chiu - Sun Microsystems) Date: Wed, 3 Mar 1999 13:03:59 -0500 (EST) Subject: "message too big" error Message-ID: <199903031803.NAA11942@bridge.East.Sun.COM> I got a "message too big" error. My agent inherits from Agent/Message, so this must be caused by some default packet (header) size in Agent/Message. Can someone explain how I should fix this problem? Thanks Dah Ming Chiu ps error message attached: -------------------------------------------- ns: _o1407 send-next: message too big (_o1407 cmd line 1) invoked from within "_o1407 cmd send {hello 513 245 26 63 22 63 27 63 23 63 28 63 24 63 20 63 29 63 21 63}" invoked from within "catch "$self cmd $args" ret" (procedure "_o1407" line 2) (SplitObject unknown line 2) invoked from within ... From chris@cs.vu.nl Wed Mar 3 18:39:45 1999 From: chris@cs.vu.nl (Christoph Haenle) Date: Wed, 03 Mar 1999 19:39:45 +0100 Subject: Packet losses in SRM ? In-Reply-To: Your message of "Tue, 02 Mar 1999 12:34:31 MET." Message-ID: Hi Syam, you can perform the following patch: Edit srm.cc and look for the passage: void SRMAgent::recv_data(int sender, int msgid, u_char*) { Tcl& tcl = Tcl::instance(); SRMinfo* sp = get_state(sender); if (msgid > sp->ldata_) { (void) request(sp, msgid - 1); sp->setReceived(msgid); sp->ldata_ = msgid; } else { tcl.evalf("%s recv data %d %d", name_, sender, msgid); } } This is where an SRM participant receives data packets. As you can see from the tcl.evalf statement, the tcl-function "recv-data" is only called for data packets which were previously detected as lost and for which consequently a request-timer was already scheduled; the timer is cancelled in the tcl function). This can have two reasons: 1.): The data packet arrives out-of-order wrt. other data packets 2.): The data packet was delayed so much that some request or repair packet with equal or higher sequence number than the data packet was received. If you want to detect lost data packets, you should comment out the else-statement and log the reception of the data packet in recv-data (see srm.tcl file). Later, figure out from the logfile what data packets were received and the missing ones are your losses. -Chris. From maria@cs.columbia.edu Wed Mar 3 18:49:09 1999 From: maria@cs.columbia.edu (Maria Papadopouli) Date: Wed, 3 Mar 1999 13:49:09 -0500 (EST) Subject: Metricom's Ricochet Modem: link delay/bandwidth capabilities ? Message-ID: <199903031849.NAA14908@merlot.cs.columbia.edu> Hello, I would like to do some simulations in which some of the links are Metricom's Ricochet, and I was wondering what would be a reasonable estimation for the link delays and bandwidth capabilities of this modem (and if there are predictions/info for the next generation Ricochet modem). Unfortunately I don't have a Ricochet modem to test it, so I was wondering if you could give me some references. I saw that in the ns-2 simulator, you have the following setup (for the MAC layer) . However, in some other papers, they mention different numbers for link delays and bw for the Ricochet modem, (e.g.,, an "actual" estimation of the roundtrip delay to be around 325ms). I understand that it is difficult to capture the wireless connection, since there are all these different parameters and conditions that could affect the performance, but if we simulate the connection of a Ricochet user as a *point-to-point link*, would it be reasonable to use for bandwidth=100Kb and link delay 100ms ? Thanks for your consideration, Maria From haoboy@isi.edu Wed Mar 3 18:49:52 1999 From: haoboy@isi.edu (Haobo Yu) Date: Wed, 3 Mar 1999 10:49:52 -0800 (PST) Subject: "message too big" error In-Reply-To: <199903031803.NAA11942@bridge.East.Sun.COM> Message-ID: The maximum message size in Agent/Message is defined in ~ns/message.h, which is 64 bytes. If you want bigger message size, you can either implement your own agent to include your own data inside the userdata area of a packet, or to modify message.h to increase the maximum message size. - Haobo On Wed, 3 Mar 1999, Dah Ming Chiu - Sun Microsystems wrote: > I got a "message too big" error. My agent inherits from Agent/Message, so > this must be caused by some default packet (header) size in Agent/Message. > Can someone explain how I should fix this problem? > > Thanks > > Dah Ming Chiu > > ps error message attached: > -------------------------------------------- > ns: _o1407 send-next: message too big > (_o1407 cmd line 1) > invoked from within > "_o1407 cmd send {hello 513 245 26 63 22 63 27 63 23 63 28 63 24 63 20 63 29 63 > 21 63}" > invoked from within > "catch "$self cmd $args" ret" > (procedure "_o1407" line 2) > (SplitObject unknown line 2) > invoked from within > ... > > From rli@bachman.cs.ou.edu Wed Mar 3 21:14:43 1999 From: rli@bachman.cs.ou.edu (Rui Li) Date: Wed, 3 Mar 1999 15:14:43 -0600 (CST) Subject: Problem Message-ID: Hi, I have just installed a current ns release 2.1b4a into my computer(under Sun 4.0). It has passed the validation. But when I run some examples downloaded from Marc Greis's tutorial web pages, nothing happens but just enters the ns environment. There is even no error message or other prompt. Do you have the same experience? Can you do me a favor to tell me the solution? Thanks. Sincerely, Rui From johnh@ISI.EDU Wed Mar 3 21:27:00 1999 From: johnh@ISI.EDU (John Heidemann) Date: Wed, 03 Mar 1999 13:27:00 -0800 Subject: Problem In-Reply-To: Message-ID: <199903032127.NAA30028@dash.isi.edu> On Wed, 03 Mar 1999 15:14:43 CST, Rui Li wrote: >Hi, > >I have just installed a current ns release 2.1b4a into my >computer(under Sun 4.0). It has passed the validation. But when I run some >examples downloaded from Marc Greis's tutorial web pages, nothing happens >but just enters the ns environment. There is even no error message or >other prompt. Do you have the same experience? Can you do me a favor to >tell me the solution? Thanks. I believe there were some problems with his examples in the last release, but don't remember the specifics (you might try looking in the mailing list archives). The upcoming release (and current snapshots) contains a test suite that includes Marc's sample problems so divergence between the samples and the implementation should be automatically caught. (And either fixed or documented.) -John Heidemann From mallman@lerc.nasa.gov Wed Mar 3 21:42:20 1999 From: mallman@lerc.nasa.gov (Mark Allman) Date: Wed, 03 Mar 1999 16:42:20 -0500 Subject: icmp messages Message-ID: <199903032142.QAA03723@guns.lerc.nasa.gov> Folks- I am stumped. I want to generate an ICMP-like source quesnch message in ns, somehow. But, I want there to be some sort of interaction with a queue. Basically, what I want is when a bunch of conditions happen in the queueing routines I generate an SQ in the opposite direction (back to the sender). However, from poking at the code for awhile, it would seem that it is very difficult to generate a new segment that is going in the opposite direction in the queueing routines. Is that true? Am I missing something? Does anyone have a suggestion for a way to do this? Any help/pointers would be appreciated. allman --- http://roland.grc.nasa.gov/~mallman/ From johnh@ISI.EDU Wed Mar 3 21:53:24 1999 From: johnh@ISI.EDU (John Heidemann) Date: Wed, 03 Mar 1999 13:53:24 -0800 Subject: Can not download software In-Reply-To: <000701be6595$bab7e920$2c0a1cac@thlinh.dit.hcmut.edu.vn> Message-ID: <199903032153.NAA30472@dash.isi.edu> On Wed, 03 Mar 1999 16:48:55 GMT, "Truong Hong Linh" wrote: >Hi all ! >I am can not download your software from this link : > Download source: current release 2.1b4a (released 19-Nov-98) >I don't know what happen.Can you help me ? > >I am looking forward you ! We can't really help you if you're so vague about the problem. BUT... please see the 2nd (!) entry on ns installation problems and bug fixes web page for some suggestions to this FAQ. -John Heidemann From greis@cs.uni-bonn.de Wed Mar 3 22:49:20 1999 From: greis@cs.uni-bonn.de (Marc Greis) Date: Wed, 3 Mar 1999 23:49:20 +0100 (MET) Subject: Problem In-Reply-To: <199903032127.NAA30028@dash.isi.edu> from "John Heidemann" at Mar 3, 99 01:27:00 pm Message-ID: <199903032249.XAA02362@zeus.informatik.uni-bonn.de> John Heidemann wrote: > On Wed, 03 Mar 1999 15:14:43 CST, Rui Li wrote: > >Hi, > > > >I have just installed a current ns release 2.1b4a into my > >computer(under Sun 4.0). It has passed the validation. But when I run some > >examples downloaded from Marc Greis's tutorial web pages, nothing happens > >but just enters the ns environment. There is even no error message or > >other prompt. Do you have the same experience? Can you do me a favor to > >tell me the solution? Thanks. Hm... I don't think I really understand what you (Rui Li) mean with "enters the ns environment" here. > I believe there were some problems with his examples in the last > release, but don't remember the specifics (you might try looking in > the mailing list archives). I have to admit that I am somewhat behind with checking my examples with the newer releases, especially since I am still using my "hacked" 2.1b3 version. ;) But the only "problem" that I have heard of so far was that ns had to use the backward compatibility mode, so I assumed that there weren't any serious problems. > The upcoming release (and current snapshots) contains a test suite > that includes Marc's sample problems so divergence between the samples > and the implementation should be automatically caught. (And either > fixed or documented.) That would be a great help! Another note: Usually, when there's a problem with the examples from the tutorial, it's probably best to contact just me instead of the whole mailing list, unless it seems to be a problem with ns itself. Marc -- Marc Greis greis@cs.uni-bonn.de From softrel9@nortelnetworks.com Wed Mar 3 23:09:03 1999 From: softrel9@nortelnetworks.com (Sarah Liu) Date: Wed, 3 Mar 1999 18:09:03 -0500 Subject: dropped packet in nam Message-ID: <03E3E0690542D211A1490000F80836F43E45C7@zcard00f.ca.nortel.com> Hi, Haobo: Following your suggetion, I modified the ns-lib.tcl and ns-link.tcl, then rebulit the ns. Now the visualization of dropped packet is working. Thanks a lot. Sarah ---------------------------------------------------------------------------- -------------------------------- Sarah Xiaohui Liu, 613-765-3203 o__ o~__ Email: softrel9@nortelnetworks.com _,>/_ _,>/_ u1452573@csi.uottawa.ca (*) (*) (*) (*) Mail Stop: 0C32, Nortel Networks Corp. ---------------------------------------------------------------------------- -------------------------------- From anandr@cs.ucsb.edu Wed Mar 3 23:23:04 1999 From: anandr@cs.ucsb.edu (Anand P. Rangarajan) Date: Wed, 3 Mar 1999 15:23:04 -0800 (PST) Subject: icmp messages In-Reply-To: <199903032142.QAA03723@guns.lerc.nasa.gov> from "Mark Allman" at Mar 3, 99 04:42:20 pm Message-ID: <199903032323.PAA27394@ease.cs.ucsb.edu> hi mark, i had to implement the same. my requirement was to send an icmp source quench message to source A whenever a router drops a packet from source A. the way i did it is like this: * define an ICMP agent * each node has an ICMP agent residing on port 0. this is done whenever you create the node. * the queueing mechanism in the router has a pointer to the icmp agent in the router( you can just derive a class from whatever queueing mechanism you like and add the pointer field) this is done when a simplex-link from the router is created * when the queue drops a packet, it calls the sendSourceQuench(pkt) method in the icmp agent using the pointer to the icmp agent. * since the icmp agent always resides in port 0, it is easy to find the destination agent for the icmp source quench pkt from the src field in "pkt" * use the send function to send the packet. hope it helps. -Anand -- Anand P. Rangarajan Email: anandr@cs.ucsb.edu Graduate Student, Comp. Science URL : http://www.cs.ucsb.edu/~anandr UCSB, CA - 93117, USA Phone: (805) 562 8703(H),805 893 5731(O) > > > Folks- > > I am stumped. I want to generate an ICMP-like source quesnch > message in ns, somehow. But, I want there to be some sort of > interaction with a queue. Basically, what I want is when a bunch of > conditions happen in the queueing routines I generate an SQ in the > opposite direction (back to the sender). However, from poking at > the code for awhile, it would seem that it is very difficult to > generate a new segment that is going in the opposite direction in > the queueing routines. Is that true? Am I missing something? Does > anyone have a suggestion for a way to do this? > > Any help/pointers would be appreciated. > > allman > > > --- > http://roland.grc.nasa.gov/~mallman/ > From Lloyd Wood Thu Mar 4 00:06:03 1999 From: Lloyd Wood (Lloyd Wood) Date: Thu, 4 Mar 1999 00:06:03 +0000 (GMT) Subject: third-party ns stuff I turned up Message-ID: Having just realised that the berkeley ns contributed-code web pages only stretch to stuff that they've been contacted about by authors of said stuff, I went searching to see if there was any other stuff out there; here's some useful-looking stuff I hadn't seen/mentioned before (ignoring results pertaining to berkeley/isi stuff)... Code: http://www.infres.enst.fr/~dax/guides/ns-nam/ http://www-stud.enst.fr/~vinot/ns-nam/accueil.htm tutorial, presentation, project report in French. (is there anything Phillippe doesn't stretch to?) http://www-stud.enst.fr/~michon/realisations.html http://www-stud.enst.fr/~michon/opus/hach.tgz provides rest of stuff, including scripts, behind report. http://klamath.stanford.edu/~aaa/tcp-bfa/ TCP buffer fill avoidance stuff. http://wwwcip.rus.uni-stuttgart.de/~inf13425/projects/virtualclock/ virtual clock scheduler for QoS enforcement via timestamps. http://www.eecs.umich.edu/~wuchang/red/ (probably completely obsolete) RED for ns v1. Tutorials: http://www.okada.ecip.nagoya-u.ac.jp/~susumu/sim/ns/ getting started in Japanese. http://www.fukt.hk-r.se/projekt/netSim/ getting started comprehensively in Swedish. http://www.docs.uu.se/~perg/course/datakom2/it98/tcpsims_lab.html comparing tcp variants. http://ucsub.colorado.edu/~la/otcl/tutorial.html yet another mirror of that OTcl tutorial. ...and then there's RFC2415 in particular. didn't bother scanning stuff in drafts. Of course, I haven't used this stuff in any depth. Caveat surfer said stuff. There's probably more stuff out there, but I got tired of wading through stuff from search engines, and I have other stuff to do. cheers, L. www.google.com gets my vote; if there was a ballot, I'd stuff the box. PGP From hyryu@etri.re.kr Thu Mar 4 09:08:50 1999 From: hyryu@etri.re.kr (hyryu) Date: Thu, 4 Mar 1999 09:08:50 -0000 Subject: ld error Message-ID: <005201be661e$a0591fc0$5bc0fe81@pony.etri.re.kr> This is a multi-part message in MIME format. ------=_NextPart_000_004F_01BE661E.9E586DC0 Content-Type: text/plain; charset="euc-kr" Content-Transfer-Encoding: base64 SGksDQoNCm1ha2UgZXJyb3IgbWVzc2FnZSBhcyBiZWxvdw0KDQpVbmRlZmluZWQgICAgICAgICAg ICAgICAgICAgICAgIGZpcnN0IHJlZmVyZW5jZWQNCiBzeW1ib2wgICAgICAgICAgICAgICAgICAg ICAgICAgICAgIGluIGZpbGUNCnNucHJpbnRmICAgICAgICAgICAgICAgICAgICAgICAgICAgIC4u L3RjbGNsL2xpYnRjbGNsLmEoVGNsLm8pDQpsZDogZmF0YWw6IFN5bWJvbCByZWZlcmVuY2luZyBl cnJvcnMuIE5vIG91dHB1dCB3cml0dGVuIHRvIG5zDQptYWtlOiAqKiogW25zXSBFcnJvciAxDQoN Ckkgd2lzaCB0aGUgcHJvYmxlbSB0byBiZSBzZXR0bGVkIHNvb24NCg0KUGxlYXNlLCBZb3UgZ2l2 ZSBhIGZ1bGwgZGV0YWlsIG9mIHRoZSBwcm9ibGVtIHRvIG1lLg0KDQpCZXN0IFJlZ2FyZHMgDQoN CkhveW9uZyBSeXUuDQoNCg== ------=_NextPart_000_004F_01BE661E.9E586DC0 Content-Type: text/html; charset="euc-kr" Content-Transfer-Encoding: base64 PCFET0NUWVBFIEhUTUwgUFVCTElDICItLy9XM0MvL0RURCBXMyBIVE1MLy9FTiI+DQo8SFRNTD4N CjxIRUFEPg0KDQo8TUVUQSBjb250ZW50PSJ0ZXh0L2h0bWw7IGNoYXJzZXQ9a3NfY181NjAxLTE5 ODciIGh0dHAtZXF1aXY9Q29udGVudC1UeXBlPg0KPE1FVEEgY29udGVudD0nIk1TSFRNTCA0Ljcy LjMxMTAuNyInIG5hbWU9R0VORVJBVE9SPg0KPC9IRUFEPg0KPEJPRFkgYmdDb2xvcj0jZmZmZmZm Pg0KPERJVj48Rk9OVCBjb2xvcj0jMDAwMDAwIHNpemU9Mj48U1RST05HPjxVPjwvVT48L1NUUk9O Rz5IaSw8L0ZPTlQ+PC9ESVY+DQo8RElWPjxGT05UIGNvbG9yPSMwMDAwMDAgc2l6ZT0yPjwvRk9O VD4mbmJzcDs8L0RJVj4NCjxESVY+PEZPTlQgc2l6ZT0yPm1ha2UgZXJyb3IgbWVzc2FnZSBhcyBi ZWxvdzwvRk9OVD48L0RJVj4NCjxESVY+Jm5ic3A7PC9ESVY+DQo8RElWPjxGT05UIGNvbG9yPSMw MDAwMDAgDQpzaXplPTI+PFNUUk9ORz48VT5VbmRlZmluZWQmbmJzcDsmbmJzcDsmbmJzcDsmbmJz cDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsm bmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsgDQpm aXJzdCANCnJlZmVyZW5jZWQ8QlI+Jm5ic3A7c3ltYm9sJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7 Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5i c3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7 Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7IA0KaW4gDQpmaWxlPEJSPnNucHJpbnRmJm5i c3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7 Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5i c3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7IA0KLi4vdGNsY2wv bGlidGNsY2wuYShUY2wubyk8QlI+bGQ6IGZhdGFsOiBTeW1ib2wgcmVmZXJlbmNpbmcgZXJyb3Jz LiBObyBvdXRwdXQgDQp3cml0dGVuIHRvIG5zPEJSPm1ha2U6ICoqKiBbbnNdIEVycm9yIDE8L1U+ PC9TVFJPTkc+PC9GT05UPjwvRElWPg0KPERJVj48Rk9OVCBjb2xvcj0jMDAwMDAwIHNpemU9Mj48 U1RST05HPjxVPjwvVT48L1NUUk9ORz48L0ZPTlQ+Jm5ic3A7PC9ESVY+DQo8RElWPjxGT05UIGNv bG9yPSMwMDAwMDAgc2l6ZT0yPkkgd2lzaCB0aGUgcHJvYmxlbSB0byBiZSBzZXR0bGVkIA0Kc29v bjwvRk9OVD48L0RJVj4NCjxESVY+PEZPTlQgY29sb3I9IzAwMDAwMCBzaXplPTI+PC9GT05UPiZu YnNwOzwvRElWPg0KPERJVj48Rk9OVCBjb2xvcj0jMDAwMDAwIHNpemU9Mj5QbGVhc2UsIFlvdSBn aXZlIGEgZnVsbCBkZXRhaWwgb2YgdGhlIHByb2JsZW0gdG8gDQptZS48L0ZPTlQ+PC9ESVY+DQo8 RElWPjxGT05UIGNvbG9yPSMwMDAwMDAgc2l6ZT0yPjwvRk9OVD4mbmJzcDs8L0RJVj4NCjxESVY+ PEZPTlQgc2l6ZT0yPkJlc3QgUmVnYXJkcyA8L0ZPTlQ+PC9ESVY+DQo8RElWPjxGT05UIHNpemU9 Mj48L0ZPTlQ+Jm5ic3A7PC9ESVY+DQo8RElWPjxGT05UIHNpemU9Mj5Ib3lvbmcgUnl1LjwvRk9O VD48L0RJVj4NCjxESVY+PEZPTlQgY29sb3I9IzAwMDAwMCBzaXplPTI+PC9GT05UPiZuYnNwOzwv RElWPjwvQk9EWT48L0hUTUw+DQo= ------=_NextPart_000_004F_01BE661E.9E586DC0-- From Jeff_Donahoo@baylor.edu Thu Mar 4 00:26:24 1999 From: Jeff_Donahoo@baylor.edu (Jeff Donahoo) Date: Wed, 03 Mar 1999 18:26:24 -0600 Subject: Make depend problems w/ NS Message-ID: <004701be65d5$a2794ad0$0f943e81@lisa.baylor.edu> Hi! I have downloaded and compiled the all in one (2.1b4a) package on a Linux (RH 5.1/Kernel 2.0.34) machine. The install and validate went without a hitch. I am able to run NS on the tcl/ex tcl files without a problem. When I try a "make depend" on ns, I get the following: emulate/net-pcap.cc:60: pcap.h: No such file or directory In file included from emulate/arp.cc:59: emulate/ether.h:4: warning: `ETHER_ADDR_LEN' redefined /usr/include/net/ethernet.h:52: warning: this is the location of the previous de finition emulate/ether.h:7: warning: `ETHER_HDR_LEN' redefined /usr/include/net/ethernet.h:55: warning: this is the location of the previous de finition emulate/ether.h:8: warning: `ETHER_MIN_LEN' redefined /usr/include/net/ethernet.h:56: warning: this is the location of the previous de finition emulate/ether.h:9: warning: `ETHER_MAX_LEN' redefined /usr/include/net/ethernet.h:57: warning: this is the location of the previous de finition Is the "No such file or directory" for pcap.h a problem? Thanks, Jeff From duan@cs.umn.edu Thu Mar 4 01:07:50 1999 From: duan@cs.umn.edu (Zhenhai Duan) Date: Wed, 3 Mar 1999 19:07:50 -0600 (CST) Subject: Shared Agent? Message-ID: Is it possible to let different agents on different nodes to share one common agent simultanuously? The shared agent needs to reply recved message back to the corresponding agent who sent the message. Thanks. --Zhenhai -------------------------------------------------------------- Zhenhai Duan duan@cs.umn.edu Computer Science Department http://www.cs.umn.edu/~duan University of Minnesota, TC Phone: (612)626-7526(O) -------------------------------------------------------------- From pantong@public1.ptt.js.cn Thu Mar 4 04:35:55 1999 From: pantong@public1.ptt.js.cn (YangMing) Date: Thu, 4 Mar 1999 12:35:55 +0800 Subject: A problem in building TclCL Message-ID: <01be65f8$7e75d9a0$b44166ca@http.www.jlonline.com> This is a multi-part message in MIME format. ------=_NextPart_000_0004_01BE663B.8C9919A0 Content-Type: text/plain; charset="gb2312" Content-Transfer-Encoding: quoted-printable I wanted to build ns from source in Windows=A1=AF95. Having built = Tcl8.0, TK8.0 and Otcl successfully, I met the problem in building = TclCL. I found the length of three files of embedded-tcl.cc, = embedded-tk.cc and embeddded-tclobj.cc was 0 byte. I checked the file of = makefile.win and made sure other pathnames of Tcl/TK and Otcl correct. = Now I can=A1=AFt go on for this problem, so I expect you can help me to = overcome this problem. Thanks! ------=_NextPart_000_0004_01BE663B.8C9919A0 Content-Type: text/html; charset="gb2312" Content-Transfer-Encoding: quoted-printable
I wanted to build ns from source in=20 Windows’95. Having built Tcl8.0, TK8.0 and Otcl successfully, I = met the=20 problem in building TclCL. I found the length of three files of = embedded-tcl.cc,=20 embedded-tk.cc and embeddded-tclobj.cc was 0 byte. I checked the file of = makefile.win and made sure other pathnames of Tcl/TK and Otcl correct. = Now I=20 can’t go on for this problem, so I expect you can help me to = overcome this=20 problem.
 
Thanks!
 
------=_NextPart_000_0004_01BE663B.8C9919A0-- From dpwu@fla.fujitsu.com Thu Mar 4 06:53:12 1999 From: dpwu@fla.fujitsu.com (Dapeng Wu) Date: Wed, 03 Mar 1999 22:53:12 -0800 Subject: a problem in building ns-2.1b4 Message-ID: <36DE2DD8.3471@fla.fujitsu.com> Dear all, I had a problem in building ns-2.1b4 on Sun Ultra 30, Solaris 2.6. First I downloaded all-in-once *.tar.gz file and unpacked them under my home directory. Then I successfully "make" under TclCL directory. I also successfully "configure" under ns directory. But "make" (ns) failed. The last part of the message is as follows: --------------------------------------------------------- webcache/tcpapp.o webcache/http-aux.o lanRouter.o tfcc.o filter.o gen/version.o gen/ns_tcl.o win32.o -R../tclcl -L../tclcl -ltclcl -R/usr/local/lib -L/usr/local/lib -lotcl -R/usr/local/lib -L/usr/local/lib -ltk -R/usr/local/lib -L/usr/local/lib -ltcl -lXext -lX11 -lsocket -lnsl -ldl -ldl -lm -ldl Undefined first referenced symbol in file Tcl_DeleteCommandFromToken /usr/local/lib/libotcl.so Tcl_CreateNamespace /usr/local/lib/libotcl.so Tcl_GetStringFromObj /usr/local/lib/libotcl.so Tcl_AddObjErrorInfo /usr/local/lib/libotcl.so Tcl_GetStringResult replicator.o TclFreeObj /usr/local/lib/libotcl.so Tcl_ProcObjCmd /usr/local/lib/libotcl.so Tcl_FindCommand /usr/local/lib/libotcl.so Tcl_NewStringObj /usr/local/lib/libotcl.so ld: fatal: Symbol referencing errors. No output written to ns make: *** [ns] Error 1 ----------------------------------------------------------- I could not find solution from the mailing list. Your help is highly appreciated. Dapeng From anurag@cs.ust.hk Thu Mar 4 07:40:56 1999 From: anurag@cs.ust.hk (Anurag) Date: Thu, 4 Mar 1999 15:40:56 +0800 (HKT) Subject: Problem In-Reply-To: <199903032249.XAA02362@zeus.informatik.uni-bonn.de> Message-ID: Hi I had loaded the same ns ver. i.e 2.1b4a few weeks back, under SUN OS 4.1.4 and all the examples worked fine. with Regards Anurag, On Wed, 3 Mar 1999, Marc Greis wrote: > John Heidemann wrote: > > On Wed, 03 Mar 1999 15:14:43 CST, Rui Li wrote: > > >Hi, > > > > > >I have just installed a current ns release 2.1b4a into my > > >computer(under Sun 4.0). It has passed the validation. But when I run some > > >examples downloaded from Marc Greis's tutorial web pages, nothing happens > > >but just enters the ns environment. There is even no error message or > > >other prompt. Do you have the same experience? Can you do me a favor to > > >tell me the solution? Thanks. > > Hm... I don't think I really understand what you (Rui Li) mean with > "enters the ns environment" here. > > > I believe there were some problems with his examples in the last > > release, but don't remember the specifics (you might try looking in > > the mailing list archives). > > I have to admit that I am somewhat behind with checking my examples > with the newer releases, especially since I am still using my "hacked" > 2.1b3 version. ;) But the only "problem" that I have heard of so far > was that ns had to use the backward compatibility mode, so I assumed > that there weren't any serious problems. > > > The upcoming release (and current snapshots) contains a test suite > > that includes Marc's sample problems so divergence between the samples > > and the implementation should be automatically caught. (And either > > fixed or documented.) > > That would be a great help! > > Another note: Usually, when there's a problem with the examples from > the tutorial, it's probably best to contact just me instead of the > whole mailing list, unless it seems to be a problem with ns itself. > > Marc > > -- > Marc Greis greis@cs.uni-bonn.de > From eroesch@iutsud.u-strasbg.fr Thu Mar 4 12:37:06 1999 From: eroesch@iutsud.u-strasbg.fr (eroesch@iutsud.u-strasbg.fr) Date: Thu, 04 Mar 1999 13:37:06 +0100 Subject: [ns] Adding new protocols ... In-Reply-To: <03E3E0690542D211A1490000F80836F43E45C7@zcard00f.ca.nortel. com> Message-ID: <3.0.1.32.19990304133706.00933a80@iutsud.u-strasbg.fr> --=====================_920547426==_ Content-Type: text/plain; charset="us-ascii" Hello all ! As said yesterday in my mail, I tried to implement new protocols, as described in the tutorial. The compilation does work, but nothing happens during the simulation .. Here are the sources latest modified .. i think it is a matter of inheritance .. Thanks in advance ----- Etienne --=====================_920547426==_ Content-Type: application/octet-stream; name="ping.zip" Content-Transfer-Encoding: base64 Content-Disposition: attachment; filename="ping.zip" UEswMFBLAwQUAAIACAAnu2Mm9EeEUI8CAAAGBgAABwAAAFBJTkcuQ0OdVE1v4jAQPZNfYaVqZSM+ d29BIFU9bFe7apHgVlWRcSbgbUgiO7DSVvz3nbEDCdDuYaUcnDcz9vObN77Rucp2CbCw1Pl6sAmD 4fCmwaR6g+oSlWvIr0Bd2MqA3BIe6Lxic9zvnjKjSBXbrcwTTrA0a9VjaiNNt0s/exG8Bx2dcgrM voigg7/0j9upbUnw/mX82mOhhTzRVSim0xFmubTO3BHssvKtYlMms6xQuORiQsFNYmK6VZfhCsP8 BAgq6M+kUmAtL9LUwfGprD8zQBuOGoBOjyu9BYQXagPJLgMTRTq3lcwVcDFQePhbfTRlczyjx0Ye wP12Jmd8+fAzfv7hseGwRvtj+j8E9B0TL6Tzsjm9sPgQBPtCJ22NDag9b8nRY49Yhxy7zClMd9el k0KXRzEQuJZCl06I/1HPNbLRDwWs+5kUu1UGzNYCnitKl/fMoyg1ACScaEB3Hd+P8wafMfQJFyQR /KTLvuLY53Ebanfaen5B01FMqZuKzYLMgr8gGZoVu+plPBq90m62NGj3lCOG3r21jBrEbhN2+3Uw TsMey+UWXdMjI3RcU/Bko2I2m7H7JDFI+cxdT0UCi41Oq5imwVXxf/qwfy5yF4mNhLv7UmV3rFIZ 3g+X7VqKYmAAe5kRc/FZaw5kQayqtGIqk9Y6Kz6CTMA8uP+IldhyDPvyVojc6GNR0Lko4wILryp4 2IaGVIMCWv0HivTUcSHY+wR5eT4OwtDkA5oXBFGDj3k1jI4pPHTT5hn480jN59UvUOhThQ9gBfTM 4QtXoKr+nXNLNCT55DjeOfxuppeLWtMWdyTemu5WKtLxq/kynn9/+uame6XRnfVzvUBdYtTnjgRy bvfR0wBQrD0Nh+AvUEsDBBQAAgAIACe7YyaPFmj91gAAAFYBAAAGAAAAUElORy5IXY+9bsQgEIRr 71Oszo2DTrnerlLl0kR+A0RgsVexAQF2E+XdA7aUv27nY3Z2aNk6QxalHF9en+Ud2qLY0Q+Alp1e NkN4URO5/DhffqGg9Dv9Yxz+amVMpJQqhJsACOwmAHEDSDluOuNsojzgBzR6VhEj5QEa47e3hTCR MzLzSgN8DgB6USnhWOxPtQ72GIqNNR6yRpy6h+bb1D2UOC5m7ddVOdPVWcVJX7HeE6KKvZp2z6ac 13s3Hj8TV7yXhYWiqM8h+kw6k+nPPG/t0Vye3aAtXdnCF1BLAwQKAAAAAAAnu2MmAAAAAAAAAAAA AAAACAAAAFBJTkcuTkFNUEsDBBQAAgAIACe7YyY6hRxRbAEAAOwCAAAIAAAAUElORy5UQ0yNksFq wzAMhs/xU4g0sFPSpGMPMLbroNDeShmuo6Rmjh1iu+0offfJ8bakh8Fykv5In34ZLfL4gRiQO2k0 1A9egzb+hArQ9lwg1Ahu4CcuFbPoQFvYaTzDRnZecWeGPWOLH44ybahXHGz8HZi98QNo3o3tDexM jyRK3RYkwnnPMmJSSFME5lwpyJoZc/KGsCJv6GsbnZSwG1tNjfuoVHNlZkvSRNRuIGtoJ0qorX2v 8JIrqT8gI2RGkKe3A6w6C6+D6bdh8QnFnePiiB3RoiHeUmjHfUYPY76mrIzv9BzyZRDiohGQj2Vx 4NRxD6j+BahmgIqNBCf6eev2ZU2dQQw/heLWvkP1hxkqixAbHuSesiHpLw+hnLHZLjRM19Kx73p4 LEpID5+Ysn4wAiiC6w2uLGmVOXAV7qphSShulLfHfLwGlghlLIaDSHpPz5wqrsXv64f7KYoiZQle UECxJKGgMOTSQclucfzgNfsCUEsDBBQAAgAIADS7YyYrRx9uSwgAAJURAAAHAAAAQUdFTlQuSLVX bXPiyBH+DL+i6/bqDrNg1r63PbuSigyyrSoMRBL2ulIpTkiDmVqh0WkGvGRr89vz9EgYgXeTT/EH I/V0P/3ePeq1qdvuNu5UIi76b99eUtydR1rGXbVYaGEu3l+SiebdZ5mYJb/ILBGZ6YKmuysWMixP 7V6z125Sm/oq3xbyaWmoFZ/Q2e+//9TFv9/IF0+Q06QWZJaCppnciEJLs2VKP0rlQhWZjE4Zw0lT shiaCqFFsREJ0/nIF4nUppDztZEqoyhLaK0FrCKt1kUsLGUus6jYEhBXukPP0ixJFfZXrQ2jwHC5 kHHEGB2KCkG5KFbSGJFQXqiNTPBglpGxti5UmqpnmT1RrLJEspBmFJZbIUT8fHZ6ZJr1tLIpRpxo tdYG7pgItjJqNFcbPqrCxSD4y5SRseiAQ2pKgccwe7XWvUOboDROI7kShY3d+WtDoLAWkZ0h8DNZ w7j/jy1UelkhJSper5D+aJe0HvKhcF7QKjKikFGq94G3CWPguhvWuZ9ObW1ECWrHSM0q9/KsAIxM XIjIrFE6nHYuD1t0cEKrhXlG2iqzbCSgJE+j7ZEnUfwxU8+pSJ4E43KOGyFDlGEz8C9O14nYY1Ii NiJVORyYl2h9tcrXsI6CrTZixTXTcLMnmQlYDB03hVrnhCIbRs+FyJCLK1F8FKnYgjJXRWRUsbV+ /3xKIyFtvBg4i1biK42UcVBL6l4eAdrSXHAYkspto0hkiSo4MAU7tFJG7BzT8KMAZEILHByGrd5C +NO5iLmNICq5vwpuoKxsJa2rnDFveOsFFIyvwwfHdwnPE3987w3cAV094tAl371xR2FAzmhA/fEo 9L2raTj2A/rjDyeAwI8/8pEdDaNHcj9MfDcIaOyTdzcZesABsO+MQs8NOuSN+sPpwBvddAgoNBqH NPTuvBBs4bjD+hjotSSNr+nO9fu3eHWuvKEXPlqDrr1wxOquoc+hieOHXn86dHyaTP3JOLBo7NfA C/pDx7tzB6cEI6CY3Hu4RcGtMxwe+AmkAzevXJjoXA0tltUDNwee7/ZD9mf/1EfUYN2wQ8HE7Xv8 4H5w4YrjP3Yq2MD9+xRMOGS0gXPn3MC51v8IC1LSn/ruHRuMQATTqyD0wmno0s14PAgYCvCB6997 fTe4pOE4sBGbBm4HSkLHqgcKwoVjPF9NA88GzhuFru9PJ6E3Hp0w0O34AZGBsQ6kBzbI45H1GUEa +4+My/GwOejQw60Lus8xtVFzOBYBotcPGa3GCa2IZ1hzlkbuzdBD1Psun44Z6MEL3BOkzAuYwSs1 PziP1sepdZ+TBdvKx1rxdmxKybsmZ3DvsfEVMwoh8KqiGV8zUjDt31bR3/XB31pvTuj7WxGhxS6o t9ZFTxdxbxXpZQ8DWaGL0bG9jcxML9Pd817EO/N02dlgv5yf8TZ933v3vnd+Tu/OL35+d/HLL7SM 1Fxtyf2U0/fUGl4NOcK9ZvONXGBTLyjTM4syWzbf4B3Dp04CWznH6DsM9kzEMOB0+V2NnGMSCnNI Mzzhu0vM8VRY9hfoEOXvz7zB0KV3R8SJO7IJOWvipkAcjhGPnXLLMqC2CxVTl+QqT+3YFbzdeVQe avwcx53ll8rPnRKUhXvv+LM758O9M5y6Q3d0E97S2fn7ZhNLSWty8jytlv5lE1b0SMNdDME0oU2U rsuZWkSx4PdCM8ezKj6SylK7Oym0h/dREcZpE7uJF8E4BYGFPzcbL+fUBsDsstmIl3gB+Owf3zDw n2A6Rmpn4pOB9JfLF9M5X3RB+XoOF7BZqlxBaUW7aDYsUwvFQ/lHE25zcQLsjSzMOkrp3+WpJSmZ 4AIQb1oTm9x2h27LyLZfjjU2xO6Y8j0DLU/oM26ExZMws+5fLQqOlyeX9GWvzEJwzrAsrEEmU4A+ YmAdK/1kGbL51ghc1lCF2Mk2au1FGj1p+gu9q/uxt24vxibtwCrKa3OYwahvKGuTVdZBb0RJUsxw LdDmldqqRVr/nSlVWrRekfn+JLLX9MiYKF6iNFu18sTdMs/rrLD6B9LyXwCGr7hFrovMvs+sozJL y8Yu7fqB+LfOaullTMpYmBlqxKBGdvXCzza1+J0h6BWJZZp8NzBwXCQXrAshU6tVVKUApRAfhNI+ 8u34aQMXMIeobNGkFfaH/eEMSxKzchSEaIaTo2gkAlexGW6ryUxm0syiNG0dxaHOw3e3yMTLVr1s 0HkjXJAOaylVcZQymU1CJcAqTKHXBtmZcmgT1/gVF4x1tyqvIx6J5rCG7loGhqsYMUQSrBmXDQwT S6S3HH7CzS8TzxzmrwhBUV1OW3dwD6bnXhKZCI+LhSiqZHKgWKhCORAsFS2kSBP7HRBZhc3GSwWX hdFoWPPwLLR+uS3bJVHjRbXvWHHxNfikKK/zlRgPSKCjk9RzWSZlgZYSC/mJP66sjfagZLHlVrHw M19OcR2P7Sddxb20C7PkX8jkBRH6vMnmV6sQGSjdLNn4RvqKj4l1JtvydS7xCXdXubLfqS0tYEN+ ujwpmVHDxqR7/xfROoX5JrWSmHNPihcVAqDt8rW7Vxn8VLEQf2bWJJRdvC4KsaNxxZVNxZN+x2Gn /jdjwTJlFTd5eyAPsW2NtUzijDeHBcQX/EzmM5672FezPtZnJlJuCP592U5tu/K4N6zyXvl5wd8L tmLs5rEsutnYryhVPQ0lVwVBR21+URvzq0LLTcGORLVTjhjaMZ3Dp+Nus5pa9UX6spPQ+MIIu8fs +X6ZoQRr5HrfZ2XLl2wrfB1iaR4h7HxqU6rUx3W+e/+6ETLT+Pb8Ks/hxLE3Cohx2W3wkXpRASzS tV46kDjG521fJfU/UEsDBBQAAgAIADm7YyZoAnSK8AoAANAZAAAIAAAAUEFDS0VULki1WFt328YR fgZ/xVTOsUmFEnWxE1tqfEqRkIWUIlgAlOOT+qggsBQRgwADLCirjv97v9kFSEBU3L5UL1jOzszO 5ZudWfX26WD/wLhOQ3E2+P77cwoOZn4eBQfpfJ4Lefb6nKQ/O7iPQrngH1ESikQegJYfLFlIsjzt 91q9/Rbt0yBdPWTR3UJSO+jQ8Zs3P5Ij7iCSUzonuRA0TaK1yPJIPjBl4MfRPM2SyD9k8X4ckxLP KRO5yNYiZDpvOSKMcplFs0JGaUJ+ElKRCxhEeVpkgVCUWZT42QNB4zLv0n0kF5Rm6psWkrXA5mge BT7r6JKfCVqJbBlJKUJaZek6CrGQC18qW+dpHKf3UXJHQZqEEQvlrIXllogOr48PH5mmPC1tChAi Wha5hDvSh62s1Z+la94qI8VK8JekMgpEFxxRTjH0sZrtscq9pk04NIj9aCkyFbuTXUNwYC0ilSHw Myxg3P/HFtJelprCNCiWSL9fJa2HfKTYz2jpS5FFfpxvA68SxorrbijnTg8VNvwQ2JFRzkdu5fkA MDJxLnxZADqcdoaHAh2cyNO5vEfaSrNUJHDIKvYfHnniB5+S9D4W4Z1gvZxjw2MVOmwS/gVxEYqt TgrFWsTpCg7MtLZBulwVsI7ch1yKJWPGMJO7KBGwGGe8y9JiRQDZyL/PRIJcXIjsk4jFAyizNPNl mj0ov18e0lhEKl6sOPGX4olCSjiomrqVR4AeaCY4DGHptkxJJGGacWAydmiZSlE5lsOPDCpDmmOj GbZ6CeEvX4mAywiiEddXxgWU6FLK8zJnzOtdWS659qX3vu+YhPXEsW+soTmkiw/YNMkx35ljz6X+ eEgDe+w51sXUsx2X/vWvvguBFy94S10N4w9k/jJxTNcl2yHrejKyoAeKnf7Ys0y3S9Z4MJoOrfG7 LkELjW2PRta15YHNs7t8HivalST7kq5NZ3CFn/0La2R5H5RBl5Y35uMucV6fJn3HswbTUd+hydSZ 2K7Sxn4NLXcw6lvX5vCQYAQOJvMGbpF71R+NGn5CU8PNCxMm9i9GSpc6B24OLccceOzPdjVA1GDd qEvuxBxYvDB/MeFK3/nQLdW65j+mYMImaxv2r/vv4Fz7v4QFKRlMHfOaDUYg3OmF61ne1DPpnW0P XVYF9a7p3FgD0z2nke2qiE1ds4tDvL46HloQLmxjfTF1LRU4a+yZjjOdeJY97rCiK/s9IgNj+5Ae qiDbY+UzgmQ7H1gvx0PloEvvr0zQHY6pilqfY+EiegOPtdU4cSri6dWcpbH5bmQh6gOTd21W9N5y zQ5SZrnMYOmT3/c/KB+nyn1OFmzTyxp4uyqlZF1Sf3hjsfElM4DgWiVo7EvW5E4HV2X0qzr4W/tZ h767Ej5K7Ix6RZ718izoLf180cOFnKKKUbG9dZTIXpIfnPRWuIaEPFx012gwp6+5k77uHR/1jl/S 0fHZyfHZ6St6KLLogczPK/qO2qOLEUe412o9i+Zo0nNK8lut5XbRegYCbp8GDYz6JqM9XO3z6O5w sVej5cFChEWM5gLyRsHEu50gdoZxVCd5g4lhnJ7WSdMhSMd1yuDCMYyTOqWPRNlGQ4wvB9t42eAa /N0wXtUprodSNH5okmyc92PDTmc6No3XddI7p3/pGW92SDiCrzU6bnj1sw2EVH/HDV/6LurBq7Ya Tl0D+Mi8cdzwy1EhOn7ZpDHp1SOSY3v27fDGOG74N5DZdeDn8tZMAn9Fxz8+uTkUarPhs+tc45Q3 mM8oj5arWOBzl/hxrHqoyHP/Dr0MwKmbwReJ6xknR81EDMwJiM2s2uNLC0ecNILgmX1naL8fGyeb KBggj6wbExh4aRi9Hmkg6mYTo+9QIuR9mn1qGvIz7j/j5FWrqX00NkH9QenBsAJRgfnhjKSIoUV1 fgS8LnPJwT5pAgRl7dnGSSNcaDHga0DEGt/0R8ZpIxZXHus7bYRi7H2YmMbpSavX2ykXFEeDtQ+Y 0N4EOdjr0l4RrvgTzDL++EUYpbzgoUgtECl8/tky9nLpZ5JJuUyVzCorEsGLu8yfy82iryT2fkuj RCnIMUxjd69MONMyGaz0d1Uqz+QkS2U6vGFyE3ENioIZU4Ctyi7/NhO/4wAs/CAQK6nXfLPolRR+ Fqb3yhxOt3KCpX4TgSy16PTxzlxq7zB7SBUC8VkRFlKurGTtx9UP/rIj2/Dal5eu6bXlwwoT7DwS cdgx2m3crB163lZk2u8cdQ7e6r1WC4NrntNEw/GMVsUsxmhjrjH90ZcWRpw1Js2zllEkXDmYj4KF n+1jspb57TkjcKHudUXY4Qp96WuutY9pdabq79+CZsV8DhnM5fSCeV7UJGGrkotFokWxuOOnzPxJ JTARY1yAJwyMzHnUDkpv9lFdQmgdm3ITQo30Le0nRCreRHyW4GVmNuv3QhSiNutvBKsz2MxFmCkr Ky3tDiKoItM+6nQ3XqgfSj9W9IW+7sQJQMFIzpJtZkDaiyyhtlLVOWeBykx+rIBHCZzvOIyLLQ3a nT/bYBhgL0pihso6jUK9wYZWm6Wg2mSv26WKmuAj4xnxec7yyNG8tA3YMYxoTm2Q6K901MFPg6dz qcwzKhefKx9/BddHpn/99iHK0M0JVZw0ymgrW4PQ09wqaxD4et5qtfDY4pcNknkbLBM2HPLGimul BESJHlU97VyUD8eOZmQslnxoMUXsq9e0luA9zVVEYclUJBHARVGoN0SWpVm5pdY0j/27lhGmQKgw VJXxnsTzErlZrs40Pg9Cwc+3pfBzPPn4sab1RXM/qOzJRCCiNbc67IiMd6gd+zMRl7ZnYo5Lqkik rhKFcob76hPaCJ6VMaldfjodtRrQ1/8h0WJ6rcxS7yZ9I2yysZV6XrLWQV4pqqWvFCgTsgFYheVV R4GrQlDF1qHVwduStVSqEdUy0P3xOjtQVx4itpzx3VMkgX7Po/vXgPOcVOYbdaix0HkEsecqvQ1G hYVdPiS/wcZg2OVS2a/zldCo8WlQPN+CoaF2c1nUtSo8NNg0QnY5N2BocG8h0tlUTL1n6LF+oCib 9uEFsaZ8aVzPOxJtXZvlJcgUfuN3q8uVw8k5XEeZLPxYkZcCb/FQ3TZ+dhd0qaZCLfkfVHdrJabu ME76bYm7+nFqY3uc5nh8Pc6iZCMMrn19w32pUEs/8aoeSSW1K1Dya3bFve0eqlSfcX+bPUj0nCfq SOvRBfeNits0tSpgGx/a9TAqKkYKXMalb7naR9bsGQ8kyEUmcI/9L1FWgCidrypUf8/OynbU+rLt XyuETLfllmoPK/rLT7o7KCp2UcW6F7cMEWOU5VpnqUTcl4q5f4BLdY5yo9Etfi0j+/G87EEQxyH0 xx+0FfvpcU/q9ZRW1Uyg9ahBYXWayC1qcy+w/y1+XChPETHyq6tf/TfPTyhRWVVdpxp7+J36zYhx 2JOdsG2bO/uU0Ft4QDoU2y6e8P637HvSItzv2BCfMeBwtyhdqNmpINMwspoZSkNrQUrO9c+nc5N8 LB0oWco8bNLABj91aH0WQQto6TbNlcC3P59VNoKzs6pUWsamhQQLMGxbRaNTKHk+WZkVLA7e1m9C ZaAGYQnMGoK3oN1AbYsXLWWgTwspfv1IFbg0sB5hzXgKaoy1r7Spgh3T6DHlgI4VQr/+KcDq8+Of Aww9MgBfWS1tjK+qarrVndWp5XDratOBzZzVavi6i4iKUZXr9mQloIfo2+0s3XmyAp+JJIzmrf8A UEsDBBQAAgAIAEW7YyYzXLl2mQ8AADInAAAIAAAATUFLRUZJTEWdWn132sbS/9v6FHtjzrFpLQhO cp+WXucEA455grEP4MR96pYs0gK61lt3Bdht73d/frMrCQmw03N7GrSanfedmZ1d+ZB9FKGQPBEu 48skCnjiOdz3n9hMRgG74g9i5vmi5oVs+sScKJx586UUNeuQsXYUP0lvvkjYsVNljR9/fHtCv+/0 7z+BcTBeCDYUcxEmikUzluD1NvRWQioveSJIm/veLJKhx2uMtXyfaX6KSaGEXAkXckjSULieSqQ3 XSZeFDIeumypBINSKlpKR2jI1Au5hN6RDNQJW3vJgkVSP6NlQlyCyPVmsI54nDAuBYuFDLyEbI9l tPJcDJIFT5rsuFHNWDuRK1hRvCJeUiQc4skiPo1WhJY5I4zgQqNSsvAUi7nkc8njBenrwTi4wwP9 0wk7Pq0SsxJ3YDn+0vXCeWaR1sBAxTckEreXhbJUazdylgGA2hvkqAhQybD+Qnrc10bmTtHO1FQF TU+0icdvqgzxwriLZU08RXrnTBhJACqAxG8meILgUSSO1k+HBJRV0SxZ03qAfezzJy1qFvl+tCZ2 3HkIo7Uv3Lkgfk1i9fXrWJspI3fpJJl3iqzESvhRDOWnTy8G3gmx6/O1FCF8eC7kg/DFEyDTCGkR wf9kJrkQ0W+Mj6SqHR2xgfC0z4h7yAOyx/i/JCyMNhg6C7ZZwV1PbCrII4iYCCvlAiqIFUhhYRAl IrNUwTAJ3q7Jz7L70lhnKhYORTqIvEgSo7WkMA9NwCuFJdEZPL7sjdjo+mL8pTXsMoxvhtefe51u B/5tjQCAla1Bh33pjS+vb8cY/8y6dzfD7mjEroesd3XT73U7xAkMhq3BuNcdnbDeoN2/7fQGH09y wn7vqjdujXvXgxMI7WaUBTJ2fUF8rrrD9iUgrfNevzf+WUu/6I0HJPECIlvspjUc99q3/daQ3dwO b65HXVMkPhwfVlnlUnA4qMnqSyXrSjr1gKtFXYo4wmJgMesrL0zqobJP64XadrJijVrjzSkVrh/q jdf1xlt2+rr55m2z8SOLIyqH3ceYVdhx/7xftbS8zxzOXaq8JvKpj1XiyUKxY4lADaYUGlhO10uK dfSE0jUHIP/Bjo2jmPkUsWzhoRpLZ/FkxRIYjwdnxhY/QlkG5g0kpMGGdJHC0SEKOV6oEkpEijVT OKzz3qDTHY1LLOqY+7tsAo6I4XNhXbX2MMKsZZ33W4NPgB8C+QEliE19Hj4gArkjUNI712xwPUZx wO4SPiFakc4QosPW90KhbS8l+9qDcGSDFC7MDxHoyxAryr54SIs1fKuEQFgNsFi+dvkUab6uWu02 tJg7jtW+ucHI+f57q9/TqlWOAapaV586XZqp1WnF6sGDK2Jr3O6PLgFMHF8tfqi9JsApcarV6oA5 Pv2eErPWEFAumXTAUFuNOEDs9nvnmJA89L2p1RuMxq1+P/MTXF3P/Gk7Vn+ACT+0xsaViVCJNbwi 6oDZM+umOyRKpKhvWbDn+oaw7Dmzv4CBNaL8IdWsfuei3/o40qYZaBUwpBmhRwX1Ot2L3qBL0M7g ejL+hCfsa/cn7X5rNCJlPyOLaLbTPb/9iMHtqDsZXV5hdNn63J10zj9OLrMXWKqpG5PX5/+TAQ2/ Is71WKO03mQwApS5fPph8jpn8GlbQnFSU5KGo3GnPbnstjrd4eiskc2PxkOUmcnlBqIpNq85xwLG p22ET6X5610WuUklOfskpd7ZgLUHN68fu+Ph7aj1sVuw4Xz4CW+WZcomKuEZu7cO7B7SRz91KGXb P8BpZJphlGSj5GEaPe7gFWGWZYKVuPY3bPz02c/Z+ebRz7kitgnvARnCMtIC3PFpwvDV2t41GsN/ prN34jGhR6NBCBiFikS4vsb3A2Ydgqzyp3gUzsTUvP9o0nskwSbQdT6gwB+boKYiTDXZ9xwvQXk2 xQLFOIg93/Q0culTQ+DRtj5ahtcj9vZImTLlRkKFRwlKEF5QNGgzbPkqOqEXPauLNMo4NVpUCmsR Cg0aBipV8oEK1RFXR2gzF56zYA4KJWoWBxvs06hKAfNm7ClaghfJidam6aKKz7DrawLak4WphmJT g2tWbXR7cdG7646arOY4B4ewOQfBbMBqUdM6+KCrBqt8sA5MhUOJIT9pl5Gjsniq6qLwgVW+AynR 7yFv71Cnbn6GDwrUx+5g0ulRVUR/X6fQSl+xdnVrQKuGVnkwutODR4y6eqRrvi7gTZR2LBj1dFsd H20NZjMykZs3NHr1sALscxs1+ZD9I8P4lynq2TYLLu+h4/X5/07abZNQKNFuFGAdZTinXx6uuMQA /RA8whIvENJeAMkXBAaFchbCXZrXaPpvrI+BY297EDT2YmKEjkvgCQVCvYTELPENaiJpHwSAnrbG B9TxOXqwmac5b15sbJNbkAW6lzJk5clkyf1tRnbgcJWUUQPqRkhDQWnCjWpbVNwxMB6TbonwQ21Z 4oBkaufvxpQZVtoYM8NiZLbhqCGSCAPxGEf0dKZykuKkpNOZVkOt8FBc/8CHZjIQXC0p01xiobAO qabcJfJA2WZAC7TWTYAttKUczk7n7i2W/hdH6O8UD2JfpGgKnX74YPDjFH8xTQdQma/mBlOvrORB OhUufd8u6kNecnmcoPu2kayCOnyAVzyRzkqaCFDpkHDp2EsGCKUwxmjpko+V0P23LRMdPemvQw9v pVKH6Vf82sroTkMcUKJ0GIp1+maQ7ZWYc5XhTTPiGUzIQhmlaxpx6WZ84f9GhpavBb1x9RSkEzQs ajBTxYnZRlnb06Y6i0glmQBjJjnS8z2VBhHwxFymDv19KZbCDnA8NO8zZH+gSfxIqcIECDUuhq6M YhtHb7JLeXqZacGFXNk6XXWcuanRAi0qTsa2SdiMRQ42iJij5cTapVSz30mX37UwvazT383MAqik GcWNlAhYkXoXA/5EamutwijK8hzlJNRIJs/wazsq4Onwh9enk0YjfQmWfuItMkr3KczCViY3Mkqi zmdypUjIXCFnJvVIRiKv0tTXJWACgFZDBpkX9EIshB/reNXKZsoDy1Yqw8RLEsVpWKHnjBxdkoQ2 eTO6py0jrfdVWvnPgqwrw4YGWMJ1A810opZxHMk0JNZi6nAsXX2R6FzI30340xIXoXQeQZnxt4g9 VHPfznKuyMNUtpIUmy8fDT0OK0Oq37poz2hnpT1av1M58GiroP1qveAJW3PFcN4XWSfgUZewpgsV gdXjiaibDYedpTvP9dVNa8yoe6FX9H66hUERe3MKtod3d3e6YeFJXcMedQ3R78lDGwEZkemG16B1 ZbYxHNrqPKSiZLIrBeGfTblRhtCVSRkSYuHLkHw3K8CyVCmAsmqfgmJuUj59xRknKcwCOVR0EVfg IZKVJ9YlQBqFxsLuFc70426+X2c+1TGf2lWAlQEJ38IQdDOzQ2THzjaiTqcdfrTyE4R7HNHhszzH 5TYLJ9jWjyc7ZpWt8rRIg4JOSgdJ2lFV9c2RXtwNLFQTtNlEMRqC1YEJqXazFp3VnGoaYe30PQcg anKIzsSSRmXijf+LJBDaiuMeKjEgLHnYvGjdN5psdKjm8T7IgToT0Ly2+93W4KLX16ecUFFjiH81 lDuDWVB8V699NlRZQcO03GQ++47Rrqd/apXjARrYfHhXGNNZQk83Mx1KLLObGlPIcK6mQtfJ+2R9 8K6iLYbogxJhbhDKH0RkfJrFyyD04QK7JntVvGinuiLW+mIRx4R85lWO/DMOFqEwt4USzcgyLNzM A23GfWqzjXH7rdr17bZj/1t7Cf5t7iz1C06ClJNG2buCsg/bulJI/C2dHvYsQSGmzGqYoNvrm71C zNHnW2t8czvsXfxMlzhL6c2ecKaiPcfG4e6sngQxpNqYEc+KNfSG33+lwGCkb0DwYsoNcOksTRee Zmep0cm+PIGjM0fzsWcm73J2p/DYC0XLsgvWm84umK46n5lKN6XdCbMz7cLNx5p9snmwB2p2s124 aSB24enhcS976mb2sUr7pd2ZtGEtzuAYUC8eDEpTc6KjjjDwHLVnSp9A7Zi6xD2z3J9H9i5KdmAi zLyl1NrNNq4pIunukhDMSfM5BN2M3jwjyKB0ropqGphL39N84eZzu2SpB17AiL1gH29qhfcB7ew4 t3+W+uKdCX1NsAvWVl+lB5Zd9dCTG7fV21m7/neQ2kjZbyEOb57BgjPoH6LNS16YTo+nUr2EM3Ne mpUv8cfRaiVfmFdCd1jPI6y8WTno/YD+7QHZYQkxzafsuS+r9dVNAZ73b6h9Zlii4qEucjzcB/X3 AOnYV4BuHUK2a015Wn8Al8/P66Geps1zq090HNpjNruB3jn1x44qfRyi+1ub7j5CV3PYU9j/Yprg FFu1SCZgS1ey7+m+0NrtVCHtc3c46l0PSM6Q9tkPWxLpu3E4PzX+SOkmBsj+lVGnAqz0o0mTrvoc 3XmlX1awDwbs3bt3tB2CK30doQc6SbqxHI1Jqcpx+t2rmjPCQoTPMHv79u0Os1qjxC79+lWlL14N y3J8AW65ocebnhYC6QP5Cwh5N5c2bDW9itmLH82zIR2olkrfmOO/ebh0agsWqbSELywr4XPVPEhN cuiN2evEZXTJi58FfcEaY1n1ez4G4RjtRE4oNOE3abL4KNEe627EcbPo+Slt/dJFBz3+3xNspSCb SxGzo98ODw9ZGa2JU/bcC4+Aw9cP7OjPGKGSsErl3X+O2HvCmJAflZFq7LApN+dnYRQKZkt2VP/t F3af/PodnObo0ff3x7/8ZgbV+n2jfsS+OjjYb7h9LbPjcYzytIcv+LTs//s1Z5Zxp3gjafd/6d/q jlQDgOxm8/7Nc/IpjgRJpiTGeU9nr/5+WX3mhj9Fs5REKEi63nfW7tnXeO1+ZT/Rx4Wzr1OOUktf fCsVx4DT4CLgGRZFq5Il4l8skQwmMm7/UcAFc0KFmBL61xomavM/Noh05Xf26tUGQJf2Ht2VaDqd DVq1KEWtVOgJ5UideqXivdKzocg56LNPOn51nH6+qEDwTwxBWKsB30cSoxRUYHDKqVpQgf1tIvaM 0IwE9MyZLQwn9osfmb9v0kv4a1nkNonNjKVVCv4/vJi+u7xPGe2XCqWRSEYzaL1AS66rlqYhWbmw FzEtS+dtE9ksVJJnca2+4r7nYquje662FBix/DvKytEL94Wup7I/qdHfa6ZP+rMCd1C/6Q9yXhW+ xdRqtVfswH7PDl6VYFaBbfOgdArG0ac77JudAtuivXIItxb72BuKR+P3RdWsw5zOjgU7UvXfDtnx fSYTGZ4N69HRy4yyP1TodPvdcdf8XQyOYF2kPtN/KUB/naMYOinr/wFQSwECFAAUAAIACAAnu2Mm 9EeEUI8CAAAGBgAABwAAAAAAAAABACAAtoEEAAAAUElORy5DQ1BLAQIUABQAAgAIACe7YyaPFmj9 1gAAAFYBAAAGAAAAAAAAAAEAIAC2gbgCAABQSU5HLkhQSwECFAAKAAAAAAAnu2MmAAAAAAAAAAAA AAAACAAAAAAAAAAAACAAtoGyAwAAUElORy5OQU1QSwECFAAUAAIACAAnu2MmOoUcUWwBAADsAgAA CAAAAAAAAAABACAAtoHYAwAAUElORy5UQ0xQSwECFAAUAAIACAA0u2MmK0cfbksIAACVEQAABwAA AAAAAAABACAAtoFqBQAAQUdFTlQuSFBLAQIUABQAAgAIADm7YyZoAnSK8AoAANAZAAAIAAAAAAAA AAEAIAC2gdoNAABQQUNLRVQuSFBLAQIUABQAAgAIAEW7YyYzXLl2mQ8AADInAAAIAAAAAAAAAAEA IAC2gfAYAABNQUtFRklMRVBLBQYAAAAABwAHAHYBAACvKAAAAAA= --=====================_920547426==_ Content-Type: text/plain; charset="us-ascii" --=====================_920547426==_-- From g.stimson@dcs.shef.ac.uk Thu Mar 4 13:59:36 1999 From: g.stimson@dcs.shef.ac.uk (Gary Stimson) Date: Thu, 04 Mar 1999 13:59:36 +0000 Subject: System documentation for ns? Message-ID: <3.0.1.32.19990304135936.0098a6f0@ridingwood.shef.ac.uk> Hi I am interested in writing my own scheduler for ns. At the moment I have the "ns Notes and Documentation" document. This is good at explaining how to construct a simulation but does not really describe the design of the simulator. Is any documentation available that describes the construction of the simulator, its classes, attributes, methods, etc? Also, is there a repository for ns modelling components? Apologies if these are FAQs - I am new to ns but have been lurking on the mailing list for a while and have not seen similar questions come up. Regards, Gary -- Gary Stimson Department of Computer Science gary@dcs.shef.ac.uk University of Sheffield Tel: 0114 222 1858 211 Portobello Street Fax: 0114 222 1810 Sheffield S1 4DP, UK From johnh@ISI.EDU Thu Mar 4 16:16:04 1999 From: johnh@ISI.EDU (John Heidemann) Date: Thu, 04 Mar 1999 08:16:04 -0800 Subject: System documentation for ns? In-Reply-To: <3.0.1.32.19990304135936.0098a6f0@ridingwood.shef.ac.uk> Message-ID: <199903041616.IAA02024@dash.isi.edu> On Thu, 04 Mar 1999 13:59:36 GMT, Gary Stimson wrote: >Hi > >I am interested in writing my own scheduler for ns. At the moment I have >the "ns Notes and Documentation" document. This is good at explaining how >to construct a simulation but does not really describe the design of the >simulator. Is any documentation available that describes the construction >of the simulator, its classes, attributes, methods, etc? All the internal documentation is in "ns Notes and Documentation". If you're planning on adding a scheduler you'll need to study the source code. >Also, is there a repository for ns modelling components? In addition to what's in the distribution, there's a contributed code web page. -John Heidemann From johnh@ISI.EDU Thu Mar 4 16:20:05 1999 From: johnh@ISI.EDU (John Heidemann) Date: Thu, 04 Mar 1999 08:20:05 -0800 Subject: a problem in building ns-2.1b4 In-Reply-To: <36DE2DD8.3471@fla.fujitsu.com> Message-ID: <199903041620.IAA02056@dash.isi.edu> On Wed, 03 Mar 1999 22:53:12 PST, Dapeng Wu wrote: >Dear all, > >I had a problem in building ns-2.1b4 on Sun Ultra 30, Solaris 2.6. > >First I downloaded all-in-once *.tar.gz file and unpacked them under my >home directory. Then I successfully "make" under TclCL directory. I >also successfully "configure" under ns directory. But "make" (ns) >failed. > >The last part of the message is as follows: > >--------------------------------------------------------- > webcache/tcpapp.o webcache/http-aux.o lanRouter.o tfcc.o filter.o >gen/version.o gen/ns_tcl.o win32.o -R../tclcl -L../tclcl -ltclcl >-R/usr/local/lib -L/usr/local/lib -lotcl -R/usr/local/lib >-L/usr/local/lib -ltk -R/usr/local/lib -L/usr/local/lib -ltcl -lXext >-lX11 -lsocket -lnsl -ldl -ldl -lm -ldl >Undefined first referenced > symbol in file >Tcl_DeleteCommandFromToken /usr/local/lib/libotcl.so >Tcl_CreateNamespace /usr/local/lib/libotcl.so >Tcl_GetStringFromObj /usr/local/lib/libotcl.so >Tcl_AddObjErrorInfo /usr/local/lib/libotcl.so >Tcl_GetStringResult replicator.o >TclFreeObj /usr/local/lib/libotcl.so >Tcl_ProcObjCmd /usr/local/lib/libotcl.so >Tcl_FindCommand /usr/local/lib/libotcl.so >Tcl_NewStringObj /usr/local/lib/libotcl.so >ld: fatal: Symbol referencing errors. No output written to ns >make: *** [ns] Error 1 >----------------------------------------------------------- There is a problem with your tcl library (the Tcl_* is the hint). Rebuild it and watch for errors (out of disk space?). -John Heidemann From johnh@ISI.EDU Thu Mar 4 16:28:55 1999 From: johnh@ISI.EDU (John Heidemann) Date: Thu, 04 Mar 1999 08:28:55 -0800 Subject: A problem in building TclCL In-Reply-To: <01be65f8$7e75d9a0$b44166ca@http.www.jlonline.com> Message-ID: <199903041628.IAA02158@dash.isi.edu> On Thu, 04 Mar 1999 12:35:55 +0800, "YangMing" wrote: >I wanted to build ns from source in Windows¡¯95. Having built Tcl8.0, TK8.0 and Otcl successfully, I met the problem in building TclCL. I found the length of three files of embedded-tcl.cc, embedded-tk.cc and embeddded-tclobj.cc was 0 byte. I checked the file of makefile.win and made sure other pathnames of Tcl/TK and Otcl correct. Now I can¡¯t go on for this problem, so I expect you can help me to overcome this problem. > >Thanks! Those files are automatically generated. See the Makefile for details of how. (This should be reflected in the Windows Makefile, too.) -John Heidemann From Steven.Russert@PSS.Boeing.com Thu Mar 4 17:09:46 1999 From: Steven.Russert@PSS.Boeing.com (Russert, Steven W) Date: Thu, 4 Mar 1999 09:09:46 -0800 Subject: nam - no display Message-ID: <618FD3AF120DD111A27900805F19D9C4039DCF92@xch-blv-03.ca.boeing.com> Thanks to Christian Joensson for the suggestion to use STRACE nam to find out what is holding up the works. The problem on the surface is, indeed, "too many open files". It looks like something might be in a loop, though. Here is the kind of entry I see in the trace output by STRACE. ... socket(PF_INET, SOCK_STREAM, IPPROTO_IP) = 5 fcntl(5,F_SETFD, FD_CLOEXEC) =0 getsockopt(5, SOL_SOCKET, SO_SNDBUF, [65535], [4]) = 0 getsockopt(5, SOL_SOCKET, SO_RCVBUF, [65535], [4]) = 0 getsockopt(5, SOL_SOCKET, SO_REUSEADDR, [1], [4]) = 0 bind(5, {sin_family=AF_INET, sin_port=htons(24445), sin_addr=inet_addr("0.0.0.0")}, 16) = 0 listen(5,128) socket(PF_INET, SOCK_STREAM, IPPROTO_IP) = 6 fcntl(6,F_SETFD, FD_CLOEXEC) =0 getsockopt(6, SOL_SOCKET, SO_SNDBUF, [65535], [4]) = 0 getsockopt(6, SOL_SOCKET, SO_RCVBUF, [65535], [4]) = 0 getsockopt(6, SOL_SOCKET, SO_REUSEADDR, [1], [4]) = 0 bind(6, {sin_family=AF_INET, sin_port=htons(24446), sin_addr=inet_addr("0.0.0.0")}, 16) = 0 listen(6,128) socket(PF_INET, SOCK_STREAM, IPPROTO_IP) = 7 FCNTL(7,F_SETFD, FD_CLOEXEC) =0 getsockopt(7, SOL_SOCKET, SO_SNDBUF, [65535], [4]) = 0 getsockopt(7, SOL_SOCKET, SO_RCVBUF, [65535], [4]) = 0 getsockopt(7, SOL_SOCKET, SO_REUSEADDR, [1], [4]) = 0 bind(7, {sin_family=AF_INET, sin_port=htons(24447), sin_addr=inet_addr("0.0.0.0")}, 16) = 0 listen(7,128) ... This continues with incrementing numbers until it hits 255, then I get socket(PF_INET, SOCK_STREAM, IPPROTO_IP) = -1 EMFILE (Too many open files) ... repeatedly, until the process is killed. Any pointers on where I should look for the source of this problem? Thanks, Steven W. Russert Boeing Phantom Works M&CT steven.w.russert@boeing.com 425-865-3588 From haoboy@isi.edu Thu Mar 4 19:12:58 1999 From: haoboy@isi.edu (Haobo Yu) Date: Thu, 4 Mar 1999 11:12:58 -0800 (PST) Subject: nam - no display In-Reply-To: <618FD3AF120DD111A27900805F19D9C4039DCF92@xch-blv-03.ca.boeing.com> Message-ID: When nam starts up, it tries to listen on a socket. In order to find a suitable port address, it does a linear search starting from 24443. If it fails to allocate a socket on an address, it assumes that Tcl will automatically close the socket so it doesn't close it. It turns out that this assumption is wrong; when Tcl's socket returns error, nam still needs to explicitly close it. Here is the patch, please let me know if it doesn't help. Thanks. - Haobo -------------------------------------- --- anim-ctrl.tcl 1999/02/18 18:31:04 1.18 +++ anim-ctrl.tcl 1999/03/04 18:48:14 @@ -79,6 +79,14 @@ incr NAM_PORT_ set ret [catch {set NAM_SOCK_ \ [socket -server ::AnimCtrlOnRemoteRequest $NAM_PORT_]}] + if {$ret} { + # Failed, delete the socket + close $NAM_SOCK_ + if {$NAM_PORT_ - $INIT_PORT > 254} { + error "Nam failed to create a socket ranging \ +from $INIT_PORT_ to $NAM_PORT_." + } + } } # Write that to a lock file, which resides under home directory -------------------------------- On Thu, 4 Mar 1999, Russert, Steven W wrote: > Thanks to Christian Joensson for the suggestion to use STRACE nam to find out what is holding up the works. The problem on the surface is, indeed, "too many open files". It looks like something might be in a loop, though. Here is the kind of entry I see in the trace output by STRACE. > ... > socket(PF_INET, SOCK_STREAM, IPPROTO_IP) = 5 > fcntl(5,F_SETFD, FD_CLOEXEC) =0 > getsockopt(5, SOL_SOCKET, SO_SNDBUF, [65535], [4]) = 0 > getsockopt(5, SOL_SOCKET, SO_RCVBUF, [65535], [4]) = 0 > getsockopt(5, SOL_SOCKET, SO_REUSEADDR, [1], [4]) = 0 > bind(5, {sin_family=AF_INET, sin_port=htons(24445), sin_addr=inet_addr("0.0.0.0")}, 16) = 0 > listen(5,128) > socket(PF_INET, SOCK_STREAM, IPPROTO_IP) = 6 > fcntl(6,F_SETFD, FD_CLOEXEC) =0 > getsockopt(6, SOL_SOCKET, SO_SNDBUF, [65535], [4]) = 0 > getsockopt(6, SOL_SOCKET, SO_RCVBUF, [65535], [4]) = 0 > getsockopt(6, SOL_SOCKET, SO_REUSEADDR, [1], [4]) = 0 > bind(6, {sin_family=AF_INET, sin_port=htons(24446), sin_addr=inet_addr("0.0.0.0")}, 16) = 0 > listen(6,128) > socket(PF_INET, SOCK_STREAM, IPPROTO_IP) = 7 > FCNTL(7,F_SETFD, FD_CLOEXEC) =0 > getsockopt(7, SOL_SOCKET, SO_SNDBUF, [65535], [4]) = 0 > getsockopt(7, SOL_SOCKET, SO_RCVBUF, [65535], [4]) = 0 > getsockopt(7, SOL_SOCKET, SO_REUSEADDR, [1], [4]) = 0 > bind(7, {sin_family=AF_INET, sin_port=htons(24447), sin_addr=inet_addr("0.0.0.0")}, 16) = 0 > listen(7,128) > ... > This continues with incrementing numbers until it hits 255, then I get > > socket(PF_INET, SOCK_STREAM, IPPROTO_IP) = -1 EMFILE (Too many open files) > ... > repeatedly, until the process is killed. > > Any pointers on where I should look for the source of this problem? > > > Thanks, > > Steven W. Russert > Boeing Phantom Works M&CT > steven.w.russert@boeing.com > 425-865-3588 > > > > From mallman@lerc.nasa.gov Thu Mar 4 20:55:23 1999 From: mallman@lerc.nasa.gov (Mark Allman) Date: Thu, 04 Mar 1999 15:55:23 -0500 Subject: icmp messages Message-ID: <199903042055.PAA19301@guns.lerc.nasa.gov> > i had to implement the same. my requirement was to > send an icmp source quench message to source A > whenever a router drops a packet from source A. > > the way i did it is like this: > > [...] Your method worked great. I am not sure if my implementation is the cleanest, but it does seem to be working OK. I still have a few more minor things to do, but the hard part is done. Thanks for the suggestion. It was a big help! allman From yangh@usc.edu Fri Mar 5 03:01:31 1999 From: yangh@usc.edu (yangh) Date: Thu, 4 Mar 1999 19:01:31 -0800 (PST) Subject: Nam display Message-ID: Hi, I tried to run the "tcp-many.tcl" under ns-2/tcl/ex. It seems ok. But the problem is that there is no nam window pop out when the program is running. If I would like to use nam to display, how could I do it? Thank you for your help and time. Yang From hussein@maxwell.ee.washington.edu Fri Mar 5 06:49:07 1999 From: hussein@maxwell.ee.washington.edu (AL-HUSSEIN ABOU-ZEID) Date: Thu, 04 Mar 1999 22:49:07 PST Subject: Two State Markov Model in ns-v2.1b4a Message-ID: <199903050649.WAA12912@maxwell.ee.washington.edu> I've been trying to use the ErrorModel/TwoStateMarkov or ErrorModel/TwoState with no success in either. I've been using the following script: #Create and attach a loss model to the link set myrates [list 40ms 0.4ms] set mytrans [list 1.0 1.0] set myeu time set em [new ErrorModel/TwoStateMarkov $myrates $myeu $mytrans] #<--- set tr [$ns create-trace Loss $f $n0 $n1] $em drop-target $tr $ns lossmodel $em $n0 $n1 I'm not sure if there is some novice error there in the script, since I am infact a novice with ns and its scripting language, but I don't think there is. In fact, I noticed that the parameters passed in the transition vector are not used by ns. Also, using ErrorModel/TwoState creates a segmentation fault. (for example: set em [new ErrorModel/TwoState 0.8 0.2] instead of the above line). Will appreciate if anyone knows how to use multiple state models in ns to give me a hint. Thanks in Advance. ------------------------ Al-hussein A. Abou-zeid University of Washington, Seattle EE Dept. From muellert@ifn.et.tu-dresden.de Fri Mar 5 11:42:02 1999 From: muellert@ifn.et.tu-dresden.de (Torsten Mueller) Date: Fri, 5 Mar 1999 12:42:02 +0100 Subject: Users and Programmers Manual Message-ID: <199903051142.MAA00458@entcw7.et.tu-dresden.de> Hallo, there has been a question about references how to program ns modules. I have seen a users and programmers manual on the web. It covers an extension to ns, but maybe it is also useful. (I havent checked that) Torsten *********************************************************************** * Torsten Mueller * Tel.: +49 351 463-4621 , 3942 * * Dresden University of Technology * Fax: +49 351 463-7163 * * Communications Laboratory * Email: * * D-01062 Dresden, Germany * muellert@ifn.et.tu-dresden.de * * http://www.ifn.et.tu-dresden.de/~muellert * *********************************************************************** From pantong@public1.ptt.js.cn Fri Mar 5 13:38:08 1999 From: pantong@public1.ptt.js.cn (YangMing) Date: Fri, 5 Mar 1999 21:38:08 +0800 Subject: A TclCL problem Message-ID: <01be670d$68013d20$4b4166ca@http.www.jlonline.com> This is a multi-part message in MIME format. ------=_NextPart_000_0004_01BE6750.76247D20 Content-Type: text/plain; charset="gb2312" Content-Transfer-Encoding: quoted-printable problem: A string code[] is defined in embedded-tcl.cc,its length is = greater than maximum string length(2048 bytes)allowed in microsoft C,so = a build error is reported. -Yang Ming ------=_NextPart_000_0004_01BE6750.76247D20 Content-Type: text/html; charset="gb2312" Content-Transfer-Encoding: quoted-printable
problem: A string code[] is defined in = embedded-tcl.cc,its=20 length is greater than maximum string length(2048 bytes)allowed in = microsoft=20 C,so a build error is reported.
 
-Yang Ming
------=_NextPart_000_0004_01BE6750.76247D20-- From eroesch@iutsud.u-strasbg.fr Fri Mar 5 14:56:08 1999 From: eroesch@iutsud.u-strasbg.fr (eroesch@iutsud.u-strasbg.fr) Date: Fri, 05 Mar 1999 15:56:08 +0100 Subject: Users and Programmers Manual In-Reply-To: <199903051142.MAA00458@entcw7.et.tu-dresden.de> Message-ID: <3.0.1.32.19990305155608.00937cd0@iutsud.u-strasbg.fr> >there has been a question about references how to program ns modules. >I have seen a users and programmers manual on the web. >It covers an extension to ns, but maybe it is also useful. >(I havent checked that) Can you give the URL ? :) I got a tutorial about ns .. but couldn't find a kind of "programmer manuel" .. ----- Etienne From Lloyd Wood Fri Mar 5 15:10:25 1999 From: Lloyd Wood (Lloyd Wood) Date: Fri, 5 Mar 1999 15:10:25 +0000 (GMT) Subject: Users and Programmers Manual In-Reply-To: <3.0.1.32.19990305155608.00937cd0@iutsud.u-strasbg.fr> Message-ID: On Fri, 5 Mar 1999 eroesch@iutsud.u-strasbg.fr wrote: > >there has been a question about references how to program ns modules. > >I have seen a users and programmers manual on the web. > >It covers an extension to ns, but maybe it is also useful. > >(I havent checked that) > > Can you give the URL ? :) > I got a tutorial about ns .. but couldn't find a kind of "programmer > manuel" .. You couldn't find: http://www-mash.cs.berkeley.edu/ns/ns-documentation.html ? (and nsDoc.ps was last updated March 3, I see. would be good if the postscript file was copied to under /dist so we'd be mirroring that too - and it might increase chances of people finding the thing.) Cheers, L. PGP From softrel9@nortelnetworks.com Fri Mar 5 16:27:15 1999 From: softrel9@nortelnetworks.com (Sarah Liu) Date: Fri, 5 Mar 1999 11:27:15 -0500 Subject: nam no-display Message-ID: <03E3E0690542D211A1490000F80836F43E45D0@zcard00f.ca.nortel.com> Hi, Haobo and Steven: I saw the emails that concerns nam no-display, but I can't find the original problem describing email that Steven sent. I just wonder what the problem is like and what may cause the nam no-display. Because right now, I met a similar problem in my machine. Yesterday, before I left the office, the nam was working fine. Today, I logged in the computer and tried to run some test-suites, the ns is working fine. But when I ran the nam file, nothing showed up. It seems strange. Since all the test suites that work fine and can pop up the nam window with the packet flowing. Right now, I haven't find the cause of it. I don't know if it caused by the network connection or it caused by the modification that I made into {ns-lib, ns-link}.tcl to make the dropped packet visible in nam? If you have any clue of cause and how to solve it, please send me an email. Thanks a lot for your help. cheers, Sarah ---------------------------------------------------------------------------- -------------------------------- Sarah Xiaohui Liu, 613-765-3203 o__ o~__ Email: softrel9@nortelnetworks.com _,>/_ _,>/_ u1452573@csi.uottawa.ca (*) (*) (*) (*) Mail Stop: 0C32, Nortel Networks Corp. ---------------------------------------------------------------------------- -------------------------------- From kwang@cs.umd.edu Fri Mar 5 17:10:41 1999 From: kwang@cs.umd.edu (Kuang-Yeh Wang) Date: Fri, 5 Mar 1999 12:10:41 -0500 (EST) Subject: Two State Markov Model in ns-v2.1b4a In-Reply-To: <199903050649.WAA12912@maxwell.ee.washington.edu> Message-ID: On Thu, 4 Mar 1999, AL-HUSSEIN ABOU-ZEID wrote: > > I've been trying to use the ErrorModel/TwoStateMarkov or > ErrorModel/TwoState with no success in either. > > I've been using the following script: > > #Create and attach a loss model to the link > set myrates [list 40ms 0.4ms] > set mytrans [list 1.0 1.0] > set myeu time > set em [new ErrorModel/TwoStateMarkov $myrates $myeu $mytrans] #<--- > set tr [$ns create-trace Loss $f $n0 $n1] > $em drop-target $tr > $ns lossmodel $em $n0 $n1 > > I'm not sure if there is some novice error there in the script, since I am > infact a novice with ns and its scripting language, but I don't think > there is. In fact, I noticed that the parameters passed in the transition > vector are not used by ns. A quick look at the file "tcl/lib/ns-errmodel.tcl" tells why the transition vector is ignored: the relevant lines in ErrorModel/TwoStateMarkov instproc init are commented out. > Also, using ErrorModel/TwoState creates a segmentation fault. (for > example: set em [new ErrorModel/TwoState 0.8 0.2] instead of the above > line). The two parameters following the class name should be random variables (RandomVariable) that determine the lengths of "error free" and "error" states. See ns Notes and Documentation, chapter 14. > Will appreciate if anyone knows how to use multiple state models in ns to > give me a hint. > > Thanks in Advance. > > ------------------------ > Al-hussein A. Abou-zeid > University of Washington, Seattle > EE Dept. > Now here is my question about TwoStateErrorModel: If I use "time" as the unit, the length of a state counts only the time when the link is actually transmitting data, i.e., idle time is not included. Is this observation correct? I brought this up because I think this feature (if my understanding of it is right) may or may not fit the scenarios people want to simulate. ======================================== Kuang-Yeh Wang kwang@cs.umd.edu University of Maryland at College Park Department of Computer Science ======================================== From haoboy@isi.edu Fri Mar 5 18:05:52 1999 From: haoboy@isi.edu (Haobo Yu) Date: Fri, 5 Mar 1999 10:05:52 -0800 (PST) Subject: nam no-display In-Reply-To: <03E3E0690542D211A1490000F80836F43E45D0@zcard00f.ca.nortel.com> Message-ID: The original Steven's message is at: http://www-mash.cs.berkeley.edu/dist/archive/ns-users/9903/0008.html. A more detailed strace output of the problem after Christian's suggestion is at: http://www-mash.cs.berkeley.edu/dist/archive/ns-users/9903/0056.html The final solution is at: http://www-mash.cs.berkeley.edu/dist/archive/ns-users/9903/0057.html - Haobo On Fri, 5 Mar 1999, Sarah Liu wrote: > Hi, Haobo and Steven: > > I saw the emails that concerns nam no-display, but I can't find the original > problem describing email that Steven sent. I just wonder what the problem is > like and what may cause the nam no-display. Because right now, I met a > similar problem in my machine. Yesterday, before I left the office, the nam > was working fine. Today, I logged in the computer and tried to run some > test-suites, the ns is working fine. But when I ran the nam file, nothing > showed up. It seems strange. Since all the test suites that work fine and > can pop up the nam window with the packet flowing. Right now, I haven't find > the cause of it. I don't know if it caused by the network connection or it > caused by the modification that I made into {ns-lib, ns-link}.tcl to make > the dropped packet visible in nam? If you have any clue of cause and how to > solve it, please send me an email. Thanks a lot for your help. > > cheers, > > Sarah From softrel9@nortelnetworks.com Fri Mar 5 18:59:14 1999 From: softrel9@nortelnetworks.com (Sarah Liu) Date: Fri, 5 Mar 1999 12:59:14 -0600 Subject: nam no-display Message-ID: <03E3E0690542D211A1490000F80836F43E45D1@zcard00f.ca.nortel.com> Hi, Haobo: Thanks for the email. I have already found what causes the problem. My colleague put too many kernel process running in the server, so that nam can't find any port address to run the file. After we killed all the processes, nam is working now. Also, following your suggestion, I modified the file anim-ctrl.tcl to fix the bug. Now it's working fine. Thanks for help. Have a nice weekend. Sarah ---------------------------------------------------------------------------- -------------------------------- Sarah Xiaohui Liu, 613-765-3203 o__ o~__ Email: softrel9@nortelnetworks.com _,>/_ _,>/_ u1452573@csi.uottawa.ca (*) (*) (*) (*) Mail Stop: 0C32, Nortel Networks Corp. ---------------------------------------------------------------------------- -------------------------------- From SVA0392@tntech.edu Fri Mar 5 21:10:07 1999 From: SVA0392@tntech.edu (SVA0392) Date: Fri, 05 Mar 1999 15:10:07 -0600 Subject: Need Help --- Error while executing ns Message-ID: <000101be674c$8c0cd820$15059595@bn207-21.pclab.tntech.edu> Hi, I installed ns and when I tried to execute the file srm.tcl in /tcl/ex directory, I got the following error: ------------------------------------------------ $ ./ns ./tcl/ex/srm-adapt-req.tcl ns: _o4 run-mcast: invalid command name "0" while executing "[$link set ifacein_] set intf_label_" (procedure "_o51" line 3) (Node get-oif line 3) invoked from within "$self get-oif $link" (procedure "_o51" line 5) (Node init-outLink line 5) invoked from within "$node init-outLink" (procedure "_o4" line 5) (Simulator run-mcast line 5) invoked from within "_o4 run-mcast" ------------------------------------------------------- Please help me Sincerely, Syam Appala From johnh@ISI.EDU Fri Mar 5 21:43:48 1999 From: johnh@ISI.EDU (John Heidemann) Date: Fri, 05 Mar 1999 13:43:48 -0800 Subject: A TclCL problem In-Reply-To: <01be670d$68013d20$4b4166ca@http.www.jlonline.com> Message-ID: <199903052143.NAA06775@dash.isi.edu> On Fri, 05 Mar 1999 21:38:08 +0800, "YangMing" wrote: >problem: A string code[] is defined in embedded-tcl.cc,its length is greater than maximum string length(2048 bytes)allowed in microsoft C,so a build error is reported. tcl2c++.c has code at the beginning to work around this problem (see TCL2C_INT). Can you look at this and figure out why this define is not being used on your system? (It is on other windows systems that we've used.) -John Heidemann From mklun@gte.com Sat Mar 6 15:18:19 1999 From: mklun@gte.com (Dr. Miroslav I. Klun) Date: Sat, 6 Mar 1999 10:18:19 -0500 Subject: RSVP/ns - please help ... Message-ID: For some time I have been trying to install RSVP/ns software (http://titan.cs.uni-bonn.de/~greis/rsvpns/) on top of the network simulator version ns-2.1b3 . (I have already given up my earlier trying to involve version ns-2.1b4.) My OS is Red Hat Linux 5.2, kernel 2.0.36, on i686 based PC. My attempts have been only partially sucessful. Whereas the installation itself did not generate any complaints, of the four examples that are part of the RSVP/ns package, only one worked - the rsvp_conf.tcl. The other three - rsvp_merge.tcl, rsvp_distinct.tcl, and rsvp_large.tcl - did not. To try to see what was involved, I used the GNU debugger. I include below the results. I have not a clue as to what the trouble is. I do not know whether anyone has ever managed to run the RSVP/ns on Linux. I do not know even on which OS has the RSVP/ns software been actually running. If anyone on the list could provide some help, or at least some hints how to resolve the problem, it would be much appreciated. Miroslav I. Klun GTE Laboratories Waltham, Massachusetts mklun@gte.com [1]========================================================================== rsvp_merge.tcl Attempts to run the RSVP/ns package example rsvp_merge.tcl (which is located in my /usr/src/NS/ns-allinone-2.1b3/rsvp/tcl/ex/rsvp directory) failed (saying "Segmentation fault", and generating empty trace and nam files), so I turned on the GNU Debugger and got the following: ~~~~~~~~~~~~ [rsvp]$ gdb ns GNU gdb 4.17.0.4 with Linux/x86 hardware watchpoint and FPU support Copyright 1998 Free Software Foundation, Inc. GDB is free software, covered by the GNU General Public License, and you are welcome to change it and/or distribute copies of it under certain conditions. Type "show copying" to see the conditions. There is absolutely no warranty for GDB. Type "show warranty" for details. This GDB was configured as "i386-redhat-linux"... (gdb) run rsvp_merge.tcl Starting program: /usr/src/NS/ns-allinone-2.1b3/bin/ns rsvp_merge.tcl 1 PATH EVENT at 2.001 : SID: 0 RATE: 500000 BUCKET: 5000 SENDER: 0 2 PATH EVENT at 3.002 : SID: 0 RATE: 500000 BUCKET: 5000 SENDER: 0 3 PATH EVENT at 3.002 : SID: 0 RATE: 500000 BUCKET: 5000 SENDER: 0 4 PATH EVENT at 3.002 : SID: 0 RATE: 500000 BUCKET: 5000 SENDER: 0 Time: 100 Time: 200 Time: 300 1 RESV EVENT at 301.001 : SID: 0 RATE: 100000 BUCKET: 100000 SENDER: 0 0 RESV EVENT at 302.002 : SID: 0 RATE: 100000 BUCKET: 100000 SENDER: 0 Time: 400 Time: 500 Time: 600 1 RESV EVENT at 601.001 : SID: 0 RATE: 300000 BUCKET: 100000 SENDER: 0 0 RESV EVENT at 602.002 : SID: 0 RATE: 300000 BUCKET: 100000 SENDER: 48 Time: 700 Time: 800 Time: 900 1 RESV EVENT at 901.001 : SID: 0 RATE: 500000 BUCKET: 100000 SENDER: 24 0 RESV EVENT at 902.002 : SID: 0 RATE: 500000 BUCKET: 100000 SENDER: 24 Time: 1000 Time: 1100 Time: 1200 4 PATH EVENT at 1200.743 : SID: 1 RATE: 500000 BUCKET: 5000 SENDER: 0 Program received signal SIGSEGV, Segmentation fault. 0x4015594f in chunk_free (ar_ptr=0x401aa420, p=0x8435860) at malloc.c:2959 malloc.c:2959: No such file or directory. Current language: auto; currently c (gdb) print ar_ptr $1 = (arena *) 0x401aa420 (gdb) print p $2 = (struct malloc_chunk *) 0x8435860 (gdb) where #0 0x4015594f in chunk_free (ar_ptr=0x401aa420, p=0x8435860) at malloc.c:2959 #1 0x401557c1 in __libc_free (mem=0x8435868) at malloc.c:2872 #2 0x400e9d11 in ___builtin_delete (ptr=0x8435868) #3 0x809c231 in InstVar::~InstVar () at gen/ns_tcl.cc:13493 #4 0x809c1dd in InstVar::catch_destroy () at gen/ns_tcl.cc:13493 #5 0x809c15c in InstVar::catch_var () at gen/ns_tcl.cc:13493 #6 0x80d94a8 in CallTraces () at gen/ns_tcl.cc:13493 #7 0x80d7ea1 in Tcl_UnsetVar2 () at gen/ns_tcl.cc:13493 #8 0x80d7dc3 in Tcl_UnsetVar () at gen/ns_tcl.cc:13493 #9 0x80a038c in OTclUnsetInstVar (obj=0x8434040, in=0x81ebb60, name=0x8435788 "off_cmn_", flgs=512) at otcl.c:1970 #10 0x809ed56 in OTclODestroyMethod (cd=0x8434040, in=0x81ebb60, argc=4, argv=0xbfffbb38) at otcl.c:1247 #11 0x80a02fe in OTclNextMethod (obj=0x8434040, in=0x81ebb60, argc=4, argv=0xbfffbb38) at otcl.c:1930 #12 0x809f26f in OTclONextMethod (cd=0x8434040, in=0x81ebb60, argc=4, argv=0xbfffbb38) at otcl.c:1378 #13 0x809dc14 in OTclDispatch (cd=0x8434040, in=0x81ebb60, argc=2, argv=0xbfffbb88) at otcl.c:419 #14 0x80a1ac3 in TclInvokeStringCommand () at gen/ns_tcl.cc:13493 #15 0x80b9305 in TclExecuteByteCode () at gen/ns_tcl.cc:13493 #16 0x80a2269 in Tcl_EvalObj () at gen/ns_tcl.cc:13493 #17 0x80d367b in TclObjInterpProc () at gen/ns_tcl.cc:13493 #18 0x80d3174 in InterpProc () at gen/ns_tcl.cc:13493 #19 0x809dc14 in OTclDispatch (cd=0x8434040, in=0x81ebb60, argc=2, argv=0xbfffc418) at otcl.c:419 #20 0x80a1ac3 in TclInvokeStringCommand () at gen/ns_tcl.cc:13493 #21 0x80b9305 in TclExecuteByteCode () at gen/ns_tcl.cc:13493 #22 0x80a2269 in Tcl_EvalObj () at gen/ns_tcl.cc:13493 #23 0x80d367b in TclObjInterpProc () at gen/ns_tcl.cc:13493 #24 0x80b9305 in TclExecuteByteCode () at gen/ns_tcl.cc:13493 #25 0x80a2269 in Tcl_EvalObj () at gen/ns_tcl.cc:13493 #26 0x80d367b in TclObjInterpProc () at gen/ns_tcl.cc:13493 #27 0x80d3174 in InterpProc () at gen/ns_tcl.cc:13493 #28 0x809dc14 in OTclDispatch (cd=0x8229f38, in=0x81ebb60, argc=5, argv=0xbfffd35c) at otcl.c:419 #29 0x80a1ac3 in TclInvokeStringCommand () at gen/ns_tcl.cc:13493 #30 0x80b9305 in TclExecuteByteCode () at gen/ns_tcl.cc:13493 #31 0x80a2269 in Tcl_EvalObj () at gen/ns_tcl.cc:13493 #32 0x80a20cf in Tcl_Eval () at gen/ns_tcl.cc:13493 #33 0x80a34bb in Tcl_GlobalEval () at gen/ns_tcl.cc:13493 #34 0x809b73f in Tcl::eval () at gen/ns_tcl.cc:13493 #35 0x809b813 in Tcl::eval () at gen/ns_tcl.cc:13493 #36 0x809cfc8 in Tcl::evalf () at gen/ns_tcl.cc:13493 #37 0x8098bb8 in RSVPAgent::update_traffic_control (this=0x8358bd0, s=0x8362d68, r=0x8434830) at /usr/src/NS/ns-allinone-2.1b3/rsvp/rsvp.cc:1812 #38 0x809483a in RSVPAgent::process_resv_tear_message (this=0x8358bd0, msg=0x83763e8) at /usr/src/NS/ns-allinone-2.1b3/rsvp/rsvp.cc:969 #39 0x80927ba in RSVPAgent::give (this=0x8358bd0, p=0x8426070, ret=0x8280ed0) at /usr/src/NS/ns-allinone-2.1b3/rsvp/rsvp.cc:475 #40 0x809b4cb in RSVPChecker::recv (this=0x8280ed0, p=0x8426070, h=0x0) at /usr/src/NS/ns-allinone-2.1b3/rsvp/rsvp-link.cc:75 #41 0x8051fab in Connector::send (this=0x82eeee0, p=0x8426070, h=0x0) at connector.h:53 #42 0x80e0e2d in TTLChecker::recv (this=0x82eeee0, p=0x8426070, h=0x0) at ttl.cc:83 #43 0x804e66d in NsObject::handle (this=0x82eeee0, e=0x8426070) at object.cc:96 #44 0x804c8a1 in Scheduler::dispatch (this=0x8228a90, p=0x8426070, t=1201.0006080000001) at scheduler.cc:98 #45 0x804c8c6 in Scheduler::dispatch (this=0x8228a90, p=0x8426070) at scheduler.cc:104 #46 0x804c856 in Scheduler::run (this=0x8228a90) at scheduler.cc:82 #47 0x804caa4 in Scheduler::command (this=0x8228a90, argc=2, argv=0xbfffdb2c) at scheduler.cc:164 ---Type to continue, or q to quit--- #48 0x809bc11 in TclClass::dispatch_cmd () at gen/ns_tcl.cc:13493 #49 0x809dc14 in OTclDispatch (cd=0x822f0c0, in=0x81ebb60, argc=3, argv=0xbfffdb70) at otcl.c:419 #50 0x80a1ac3 in TclInvokeStringCommand () at gen/ns_tcl.cc:13493 #51 0x80b9305 in TclExecuteByteCode () at gen/ns_tcl.cc:13493 #52 0x80a2269 in Tcl_EvalObj () at gen/ns_tcl.cc:13493 #53 0x80b9516 in TclExecuteByteCode () at gen/ns_tcl.cc:13493 #54 0x80a2269 in Tcl_EvalObj () at gen/ns_tcl.cc:13493 #55 0x80d367b in TclObjInterpProc () at gen/ns_tcl.cc:13493 #56 0x80d3174 in InterpProc () at gen/ns_tcl.cc:13493 #57 0x809dd58 in OTclDispatch (cd=0x822f0c0, in=0x81ebb60, argc=2, argv=0xbfffe758) at otcl.c:466 #58 0x80a1ac3 in TclInvokeStringCommand () at gen/ns_tcl.cc:13493 #59 0x80b9305 in TclExecuteByteCode () at gen/ns_tcl.cc:13493 #60 0x80a2269 in Tcl_EvalObj () at gen/ns_tcl.cc:13493 #61 0x80d367b in TclObjInterpProc () at gen/ns_tcl.cc:13493 #62 0x80d3174 in InterpProc () at gen/ns_tcl.cc:13493 #63 0x809dc14 in OTclDispatch (cd=0x8229f38, in=0x81ebb60, argc=2, argv=0xbfffefe8) at otcl.c:419 #64 0x80a1ac3 in TclInvokeStringCommand () at gen/ns_tcl.cc:13493 #65 0x80b9305 in TclExecuteByteCode () at gen/ns_tcl.cc:13493 #66 0x80a2269 in Tcl_EvalObj () at gen/ns_tcl.cc:13493 #67 0x80c9da0 in Tcl_EvalFile () at gen/ns_tcl.cc:13493 #68 0x80cb7ae in Tcl_Main () at gen/ns_tcl.cc:13493 #69 0x804a6a5 in main (argc=2, argv=0xbffffa0c) at tclAppInit.cc:53 (gdb) list malloc.c:2954: No such file or directory. (gdb) up #1 0x401557c1 in __libc_free (mem=0x8435868) at malloc.c:2872 malloc.c:2872: No such file or directory. (gdb) list malloc.c:2867: No such file or directory. (gdb) list malloc.c:2867: No such file or directory. (gdb) up #2 0x400e9d11 in ___builtin_delete (ptr=0x8435868) (gdb) list malloc.c:2867: No such file or directory. (gdb) up #3 0x809c231 in InstVar::~InstVar () at gen/ns_tcl.cc:13493 13493 EmbeddedTcl et_ns_lib(code); Current language: auto; currently c++ (gdb) list 13488 }\n\ 13489 }\n\ 13490 \n\ 13491 "; 13492 #include "tclcl.h" 13493 EmbeddedTcl et_ns_lib(code); (gdb) Line number 13494 out of range; gen/ns_tcl.cc has 13493 lines. (gdb) Line number 13494 out of range; gen/ns_tcl.cc has 13493 lines. (gdb) list Line number 13494 out of range; gen/ns_tcl.cc has 13493 lines. (gdb) up #4 0x809c1dd in InstVar::catch_destroy () at gen/ns_tcl.cc:13493 13493 EmbeddedTcl et_ns_lib(code); (gdb) list 13488 }\n\ 13489 }\n\ 13490 \n\ 13491 "; 13492 #include "tclcl.h" 13493 EmbeddedTcl et_ns_lib(code); (gdb) up #5 0x809c15c in InstVar::catch_var () at gen/ns_tcl.cc:13493 13493 EmbeddedTcl et_ns_lib(code); (gdb) up #6 0x80d94a8 in CallTraces () at gen/ns_tcl.cc:13493 13493 EmbeddedTcl et_ns_lib(code); (gdb) up #7 0x80d7ea1 in Tcl_UnsetVar2 () at gen/ns_tcl.cc:13493 13493 EmbeddedTcl et_ns_lib(code); (gdb) list 13488 }\n\ 13489 }\n\ 13490 \n\ 13491 "; 13492 #include "tclcl.h" 13493 EmbeddedTcl et_ns_lib(code); (gdb) quit The program is running. Exit anyway? (y or n) y =============== The fairly large (over 328 Meg) file /usr/src/NS/ns-allinone-2.1b3/ns-2/gen/ns_tcl.cc _ENDS_ with the following _LAST TWO LINES_: #include "tclcl.h" EmbeddedTcl et_ns_lib(code); =============== The file /usr/src/NS/ns-allinone-2.1b3/TclCL/tclcl.h contains the following: ................................... class EmbeddedTcl { public: inline EmbeddedTcl(const char* code) { code_ = code; } void load(); int load(Tcl_Interp* interp); const char* get_code() { return code_; } private: const char* code_; }; ................................... And there is no file tclcl.cc to see!!! ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ [2]========================================================================== rsvp_distinct.tcl Again empty "out" files! The GNU Debugger yields now another set of messages: [root@atlanta rsvp]# pwd /usr/src/NS/ns-allinone-2.1b3/rsvp/tcl/ex/rsvp [root@atlanta rsvp]# gdb ns GNU gdb 4.17.0.4 with Linux/x86 hardware watchpoint and FPU support Copyright 1998 Free Software Foundation, Inc. GDB is free software, covered by the GNU General Public License, and you are welcome to change it and/or distribute copies of it under certain conditions. Type "show copying" to see the conditions. There is absolutely no warranty for GDB. Type "show warranty" for details. This GDB was configured as "i386-redhat-linux"... (gdb) run rsvp_distinct.tcl Starting program: /usr/src/NS/ns-allinone-2.1b3/bin/ns rsvp_distinct.tcl 1 PATH EVENT at 2.001 : SID: 0 RATE: 500000 BUCKET: 5000 SENDER: 2 0 PATH EVENT at 3.002 : SID: 0 RATE: 500000 BUCKET: 5000 SENDER: 2 1 PATH EVENT at 4.001 : SID: 0 RATE: 500000 BUCKET: 5000 SENDER: 3 0 PATH EVENT at 5.002 : SID: 0 RATE: 500000 BUCKET: 5000 SENDER: 3 1 PATH EVENT at 6.001 : SID: 0 RATE: 500000 BUCKET: 5000 SENDER: 4 0 PATH EVENT at 7.002 : SID: 0 RATE: 500000 BUCKET: 5000 SENDER: 4 Time: 100 Time: 200 Time: 300 1 RESV EVENT at 301.001 : SID: 0 RATE: 100000 BUCKET: 100000 SENDER: 48 Program received signal SIGSEGV, Segmentation fault. 0x809a739 in FILTER_SPEC::get_addr (this=0x83aa960) at /usr/src/NS/ns-allinone-2.1b3/rsvp/rsvp-objects.h:196 196 inline long get_addr() { return con->addr; }; (gdb) print this $1 = (FILTER_SPEC *) 0x83aa960 (gdb) $2 = (FILTER_SPEC *) 0x83aa960 (gdb) where #0 0x809a739 in FILTER_SPEC::get_addr (this=0x83aa960) at /usr/src/NS/ns-allinone-2.1b3/rsvp/rsvp-objects.h:196 #1 0x80943f2 in RSVPAgent::process_resv_message (this=0x82ebe50, msg=0x83abcf8, fromhop=1) at /usr/src/NS/ns-allinone-2.1b3/rsvp/rsvp.cc:918 #2 0x80927a8 in RSVPAgent::give (this=0x82ebe50, p=0x837b1c8, ret=0x828b2d0) at /usr/src/NS/ns-allinone-2.1b3/rsvp/rsvp.cc:474 #3 0x809b4cb in RSVPChecker::recv (this=0x828b2d0, p=0x837b1c8, h=0x0) at /usr/src/NS/ns-allinone-2.1b3/rsvp/rsvp-link.cc:75 #4 0x8051fab in Connector::send (this=0x8288390, p=0x837b1c8, h=0x0) at connector.h:53 #5 0x80e0e2d in TTLChecker::recv (this=0x8288390, p=0x837b1c8, h=0x0) at ttl.cc:83 #6 0x804e66d in NsObject::handle (this=0x8288390, e=0x837b1c8) at object.cc:96 #7 0x804c8a1 in Scheduler::dispatch (this=0x8228a88, p=0x837b1c8, t=302.00192000000004) at scheduler.cc:98 #8 0x804c8c6 in Scheduler::dispatch (this=0x8228a88, p=0x837b1c8) at scheduler.cc:104 #9 0x804c856 in Scheduler::run (this=0x8228a88) at scheduler.cc:82 #10 0x804caa4 in Scheduler::command (this=0x8228a88, argc=2, argv=0xbfffdb2c) at scheduler.cc:164 #11 0x809bc11 in TclClass::dispatch_cmd () at gen/ns_tcl.cc:13493 #12 0x809dc14 in OTclDispatch (cd=0x822f0b8, in=0x81ebb60, argc=3, argv=0xbfffdb70) at otcl.c:419 #13 0x80a1ac3 in TclInvokeStringCommand () at gen/ns_tcl.cc:13493 #14 0x80b9305 in TclExecuteByteCode () at gen/ns_tcl.cc:13493 #15 0x80a2269 in Tcl_EvalObj () at gen/ns_tcl.cc:13493 #16 0x80b9516 in TclExecuteByteCode () at gen/ns_tcl.cc:13493 #17 0x80a2269 in Tcl_EvalObj () at gen/ns_tcl.cc:13493 #18 0x80d367b in TclObjInterpProc () at gen/ns_tcl.cc:13493 #19 0x80d3174 in InterpProc () at gen/ns_tcl.cc:13493 #20 0x809dd58 in OTclDispatch (cd=0x822f0b8, in=0x81ebb60, argc=2, argv=0xbfffe758) at otcl.c:466 #21 0x80a1ac3 in TclInvokeStringCommand () at gen/ns_tcl.cc:13493 #22 0x80b9305 in TclExecuteByteCode () at gen/ns_tcl.cc:13493 #23 0x80a2269 in Tcl_EvalObj () at gen/ns_tcl.cc:13493 #24 0x80d367b in TclObjInterpProc () at gen/ns_tcl.cc:13493 #25 0x80d3174 in InterpProc () at gen/ns_tcl.cc:13493 #26 0x809dc14 in OTclDispatch (cd=0x8229f30, in=0x81ebb60, argc=2, argv=0xbfffefe8) at otcl.c:419 #27 0x80a1ac3 in TclInvokeStringCommand () at gen/ns_tcl.cc:13493 #28 0x80b9305 in TclExecuteByteCode () at gen/ns_tcl.cc:13493 #29 0x80a2269 in Tcl_EvalObj () at gen/ns_tcl.cc:13493 #30 0x80c9da0 in Tcl_EvalFile () at gen/ns_tcl.cc:13493 #31 0x80cb7ae in Tcl_Main () at gen/ns_tcl.cc:13493 #32 0x804a6a5 in main (argc=2, argv=0xbffffa0c) at tclAppInit.cc:53 (gdb) list 191 */ 192 class FILTER_SPEC : public RSVPobject { 193 public: 194 FILTER_SPEC(nsaddr_t src, char ip6); 195 FILTER_SPEC(unsigned char *cont); 196 inline long get_addr() { return con->addr; }; 197 void dump_object(); 198 private: 199 struct construct { 200 long addr; (gdb) up #1 0x80943f2 in RSVPAgent::process_resv_message (this=0x82ebe50, msg=0x83abcf8, fromhop=1) at /usr/src/NS/ns-allinone-2.1b3/rsvp/rsvp.cc:918 918 sender->get_addr()); (gdb) list 913 each new RSB, and resv upcalls are not only made on leaf nodes. */ 914 if (noisy_ & UPC_RESV) { 915 Tcl& tcl = Tcl::instance(); 916 tcl.evalf("%s upcall-resv %d %f %d %d", name(), s->sid, 917 r->fspec->get_rate(), r->fspec->get_size(), 918 sender->get_addr()); 919 } 920 } 921 rsearch = rsearch->next; 922 } (gdb) up #2 0x80927a8 in RSVPAgent::give (this=0x82ebe50, p=0x837b1c8, ret=0x828b2d0) at /usr/src/NS/ns-allinone-2.1b3/rsvp/rsvp.cc:474 474 case RESV: process_resv_message(msg, rsvp_hdr->fromhop); break; (gdb) list 469 hdr_cmn* cmn_hdr = (hdr_cmn*)p->access(off_cmn_); 470 RSVPmessage *msg = new RSVPmessage(p->accessdata()); 471 switch (msg->get_type()) { 472 case PATH: process_path_message(msg, cmn_hdr->iface_, ret); break; 473 case PATHTEAR: process_path_tear_message(msg, cmn_hdr->iface_, ret); break; 474 case RESV: process_resv_message(msg, rsvp_hdr->fromhop); break; 475 case RESVTEAR: process_resv_tear_message(msg); break; 476 case RESVERR: process_resv_err_message(msg); break; 477 case RESVCONF: process_resv_conf_message(msg); break; 478 } (gdb) up #3 0x809b4cb in RSVPChecker::recv (this=0x828b2d0, p=0x837b1c8, h=0x0) at /usr/src/NS/ns-allinone-2.1b3/rsvp/rsvp-link.cc:75 75 ((RSVPAgent *)TclObject::lookup(tcl.result()))->give(p, this); (gdb) list 70 if (strlen(tcl.result()) == 0) { 71 target_->recv(p, 0); 72 } else { 73 hdr_rsvp *rsvphdr = (hdr_rsvp*)p->access(off_rsvp_); 74 rsvphdr->fromhop = src_; 75 ((RSVPAgent *)TclObject::lookup(tcl.result()))->give(p, this); 76 } 77 } else { 78 target_->recv(p, 0); 79 } (gdb) up #4 0x8051fab in Connector::send (this=0x8288390, p=0x837b1c8, h=0x0) at connector.h:53 53 inline void send(Packet* p, Handler* h) { target_->recv(p, h); } (gdb) up #5 0x80e0e2d in TTLChecker::recv (this=0x8288390, p=0x837b1c8, h=0x0) at ttl.cc:83 83 send(p, h); (gdb) up #6 0x804e66d in NsObject::handle (this=0x8288390, e=0x837b1c8) at object.cc:96 96 recv((Packet*)e); (gdb) quit The program is running. Exit anyway? (y or n) y [root@atlanta rsvp]# [3]========================================================================== rsvp_large.tcl [root@atlanta rsvp]# gdb ns GNU gdb 4.17.0.4 with Linux/x86 hardware watchpoint and FPU support Copyright 1998 Free Software Foundation, Inc. GDB is free software, covered by the GNU General Public License, and you are welcome to change it and/or distribute copies of it under certain conditions. Type "show copying" to see the conditions. There is absolutely no warranty for GDB. Type "show warranty" for details. This GDB was configured as "i386-redhat-linux"... (gdb) run rsvp_large.tcl Starting program: /usr/src/NS/ns-allinone-2.1b3/bin/ns rsvp_large.tcl Creating 80 nodes with RSVP agents and traffic sinks Connecting the "backbone" Connecting the "access nodes" with the "backbone" Connecting the "end nodes" with the "access nodes" Initializing 15 flows per end node Initializing 4 RSVP flows per end node Time: 0 Program received signal SIGSEGV, Segmentation fault. chunk_alloc (ar_ptr=0x401aa420, nb=56) at malloc.c:2617 malloc.c:2617: No such file or directory. Current language: auto; currently c (gdb) print ar_ptr $1 = (arena *) 0x401aa420 (gdb) print nb $2 = 56 (gdb) where #0 chunk_alloc (ar_ptr=0x401aa420, nb=56) at malloc.c:2617 #1 0x401550c5 in __libc_malloc (bytes=49) at malloc.c:2561 #2 0x80d525e in Tcl_ConcatObj () at gen/ns_tcl.cc:13493 #3 0x80a5291 in Tcl_EvalObjCmd () at gen/ns_tcl.cc:13493 #4 0x80b9305 in TclExecuteByteCode () at gen/ns_tcl.cc:13493 #5 0x80a2269 in Tcl_EvalObj () at gen/ns_tcl.cc:13493 #6 0x80d367b in TclObjInterpProc () at gen/ns_tcl.cc:13493 #7 0x80d3174 in InterpProc () at gen/ns_tcl.cc:13493 #8 0x809dc14 in OTclDispatch (cd=0x822d318, in=0x81ebb60, argc=4, argv=0xbfffccd8) at otcl.c:419 #9 0x80a1ac3 in TclInvokeStringCommand () at gen/ns_tcl.cc:13493 #10 0x80b9305 in TclExecuteByteCode () at gen/ns_tcl.cc:13493 #11 0x80a2269 in Tcl_EvalObj () at gen/ns_tcl.cc:13493 #12 0x80d367b in TclObjInterpProc () at gen/ns_tcl.cc:13493 #13 0x80d3174 in InterpProc () at gen/ns_tcl.cc:13493 #14 0x809dc14 in OTclDispatch (cd=0x8a26488, in=0x81ebb60, argc=2, argv=0xbfffd568) at otcl.c:419 #15 0x80a1ac3 in TclInvokeStringCommand () at gen/ns_tcl.cc:13493 #16 0x80b9305 in TclExecuteByteCode () at gen/ns_tcl.cc:13493 #17 0x80a2269 in Tcl_EvalObj () at gen/ns_tcl.cc:13493 #18 0x80a20cf in Tcl_Eval () at gen/ns_tcl.cc:13493 #19 0x80a34bb in Tcl_GlobalEval () at gen/ns_tcl.cc:13493 #20 0x809b73f in Tcl::eval () at gen/ns_tcl.cc:13493 #21 0x804c8f4 in AtHandler::handle (this=0x81e718c, e=0x8a27160) at scheduler.cc:120 #22 0x804c8a1 in Scheduler::dispatch (this=0x8228a88, p=0x8a27160, t=0.18165419999999999) at scheduler.cc:98 #23 0x804c8c6 in Scheduler::dispatch (this=0x8228a88, p=0x8a27160) at scheduler.cc:104 #24 0x804c856 in Scheduler::run (this=0x8228a88) at scheduler.cc:82 #25 0x804caa4 in Scheduler::command (this=0x8228a88, argc=2, argv=0xbfffdb2c) at scheduler.cc:164 #26 0x809bc11 in TclClass::dispatch_cmd () at gen/ns_tcl.cc:13493 #27 0x809dc14 in OTclDispatch (cd=0x824de90, in=0x81ebb60, argc=3, argv=0xbfffdb70) at otcl.c:419 #28 0x80a1ac3 in TclInvokeStringCommand () at gen/ns_tcl.cc:13493 #29 0x80b9305 in TclExecuteByteCode () at gen/ns_tcl.cc:13493 #30 0x80a2269 in Tcl_EvalObj () at gen/ns_tcl.cc:13493 #31 0x80b9516 in TclExecuteByteCode () at gen/ns_tcl.cc:13493 #32 0x80a2269 in Tcl_EvalObj () at gen/ns_tcl.cc:13493 #33 0x80d367b in TclObjInterpProc () at gen/ns_tcl.cc:13493 #34 0x80d3174 in InterpProc () at gen/ns_tcl.cc:13493 #35 0x809dd58 in OTclDispatch (cd=0x824de90, in=0x81ebb60, argc=2, argv=0xbfffe758) at otcl.c:466 #36 0x80a1ac3 in TclInvokeStringCommand () at gen/ns_tcl.cc:13493 #37 0x80b9305 in TclExecuteByteCode () at gen/ns_tcl.cc:13493 #38 0x80a2269 in Tcl_EvalObj () at gen/ns_tcl.cc:13493 #39 0x80d367b in TclObjInterpProc () at gen/ns_tcl.cc:13493 #40 0x80d3174 in InterpProc () at gen/ns_tcl.cc:13493 #41 0x809dc14 in OTclDispatch (cd=0x822d318, in=0x81ebb60, argc=2, argv=0xbfffefe8) at otcl.c:419 #42 0x80a1ac3 in TclInvokeStringCommand () at gen/ns_tcl.cc:13493 #43 0x80b9305 in TclExecuteByteCode () at gen/ns_tcl.cc:13493 #44 0x80a2269 in Tcl_EvalObj () at gen/ns_tcl.cc:13493 #45 0x80c9da0 in Tcl_EvalFile () at gen/ns_tcl.cc:13493 #46 0x80cb7ae in Tcl_Main () at gen/ns_tcl.cc:13493 #47 0x804a6a5 in main (argc=2, argv=0xbffffa0c) at tclAppInit.cc:53 (gdb) list malloc.c:2612: No such file or directory. (gdb) up #1 0x401550c5 in __libc_malloc (bytes=49) at malloc.c:2561 malloc.c:2561: No such file or directory. (gdb) list malloc.c:2556: No such file or directory. (gdb) up #2 0x80d525e in Tcl_ConcatObj () at gen/ns_tcl.cc:13493 13493 EmbeddedTcl et_ns_lib(code); Current language: auto; currently c++ (gdb) list 13488 }\n\ 13489 }\n\ 13490 \n\ 13491 "; 13492 #include "tclcl.h" 13493 EmbeddedTcl et_ns_lib(code); (gdb) quit The program is running. Exit anyway? (y or n) y [root@atlanta rsvp]# ls -ltr total 23 -rw-r--r-- 1 sebast nobody 5218 Jul 30 1998 rsvp_merge.tcl -rw-r--r-- 1 sebast nobody 4310 Jul 30 1998 rsvp_distinct.tcl -rw-r--r-- 1 sebast nobody 2568 Jul 30 1998 rsvp_conf.tcl -rw-r--r-- 1 sebast nobody 9025 Jul 30 1998 rsvp_large.tcl -rw-rw-r-- 1 root root 0 Mar 3 13:37 out0.tr -rw-rw-r-- 1 root root 0 Mar 3 13:37 out1.tr -rw-rw-r-- 1 root root 0 Mar 3 13:37 out2.tr -rw-rw-r-- 1 root root 0 Mar 3 13:37 out3.tr [root@atlanta rsvp]# =============================================================================c a From pantong@public1.ptt.js.cn Sat Mar 6 15:28:27 1999 From: pantong@public1.ptt.js.cn (YangMing) Date: Sat, 6 Mar 1999 23:28:27 +0800 Subject: NS:too big to run Message-ID: <01be67e5$fb33cbc0$3c4166ca@http.www.jlonline.com> This is a multi-part message in MIME format. ------=_NextPart_000_0006_01BE6829.09570BC0 Content-Type: text/plain; charset="gb2312" Content-Transfer-Encoding: quoted-printable I build ns-2.1b3 in Windows'95.The building process generates ns.exe, = but ns.exe(more than 5M)is too big to run.I modify the = makefile.win,removing the some C library such as libc.lib,the new ns.exe = is more than 4M yet.The link has output as the following: LINK : warning LNK4044: unrecognized option "INCREMENTAL:NO"; ignored LINK : warning LNK4044: unrecognized option "PDB:NONE"; ignored LINK : warning LNK4044: unrecognized option "RELEASE"; ignored LINK : warning LNK4044: unrecognized option "align:0x1000"; ignored kernel32.lib(KERNEL32.dll) : warning LNK4006: __NULL_IMPORT_DESCRIPTOR = already defined in msvcrt.lib(MSVCRT40.dll); second definition ignored advapi32.lib(ADVAPI32.dll) : warning LNK4006: __NULL_IMPORT_DESCRIPTOR = already defined in msvcrt.lib(MSVCRT40.dll); second definition ignored tk80.lib(tk80.dll) : warning LNK4006: __NULL_IMPORT_DESCRIPTOR already = defined in msvcrt.lib(MSVCRT40.dll); second definition ignored tcl80.lib(tcl80.dll) : warning LNK4006: __matherr already defined in = msvcrt.lib(merr.obj); second definition ignored tcl80.lib(tcl80.dll) : warning LNK4006: __NULL_IMPORT_DESCRIPTOR already = defined in msvcrt.lib(MSVCRT40.dll); second definition ignored I can't solve the problem,you are welcome to give me a suggestion.=20 -Y. Ming ------=_NextPart_000_0006_01BE6829.09570BC0 Content-Type: text/html; charset="gb2312" Content-Transfer-Encoding: quoted-printable
I build ns-2.1b3 in Windows'95.The = building=20 process generates ns.exe, but ns.exe(more than 5M)is too big to run.I = modify the=20 makefile.win,removing the some C library such as libc.lib,the new ns.exe = is more=20 than 4M yet.The link has output as the following:
 
LINK : warning LNK4044: unrecognized = option=20 "INCREMENTAL:NO"; ignored
LINK : warning LNK4044: = unrecognized=20 option "PDB:NONE"; ignored
LINK : warning LNK4044: = unrecognized=20 option "RELEASE"; ignored
LINK : warning LNK4044: = unrecognized=20 option "align:0x1000"; ignored
kernel32.lib(KERNEL32.dll) : = warning=20 LNK4006: __NULL_IMPORT_DESCRIPTOR already defined in = msvcrt.lib(MSVCRT40.dll);=20 second definition ignored
advapi32.lib(ADVAPI32.dll) : warning = LNK4006:=20 __NULL_IMPORT_DESCRIPTOR already defined in msvcrt.lib(MSVCRT40.dll); = second=20 definition ignored
tk80.lib(tk80.dll) : warning LNK4006:=20 __NULL_IMPORT_DESCRIPTOR already defined in msvcrt.lib(MSVCRT40.dll); = second=20 definition ignored
tcl80.lib(tcl80.dll) : warning LNK4006: __matherr = already=20 defined in msvcrt.lib(merr.obj); second definition=20 ignored
tcl80.lib(tcl80.dll) : warning LNK4006: = __NULL_IMPORT_DESCRIPTOR=20 already defined in msvcrt.lib(MSVCRT40.dll); second definition=20 ignored
 
I can't solve the problem,you are = welcome to=20 give me a suggestion.
    -Y.=20 Ming
------=_NextPart_000_0006_01BE6829.09570BC0-- From syan@jupiter.nal.utoronto.ca Sat Mar 6 23:16:21 1999 From: syan@jupiter.nal.utoronto.ca (Shuqian Yan) Date: Sat, 6 Mar 1999 18:16:21 -0500 (EST) Subject: Dynamic unicast routing protocol Message-ID: This message is in MIME format. The first part should be readable text, while the remaining parts are likely unreadable without MIME-aware tools. Send mail to mime@docserver.cac.washington.edu for more info. ---559023410-851401618-920762181=:29077 Content-Type: TEXT/PLAIN; charset=US-ASCII Hello all, I modified the example file ~ns/tcl/ex/newmcast/mcast5.tcl by adding an extra line $ns rtproto DV, because I want to use the dynamic unicast routing protocol as the underlying unicast routing protocol. But when I execute the above script, it failed with the following error messages, At 0.0000 : node 0 BST: grp 32771, node 0 At 0.0000 : node 1 BST: grp 32771, node 1 At 0.0000 : node 2 BST: grp 32771, node 2 At 0.0000 : node 3 BST: grp 32771, node 3 ns: _o3 run-mcast: can't read "Node_(-1)": no such element in array while executing "set Node_($id)" (procedure "_o3" line 3) (Simulator get-node-by-id line 3) invoked from within "$ns_ get-node-by-id [[$ns_ get-routelogic] lookup $id_ $srcID]" (procedure "_o77" line 6) (Node rpf-nbr line 6) invoked from within "$self rpf-nbr $node" (procedure "_o77" line 6) (Node from-node-iface line 6) invoked from within "$node_ from-node-iface $RP_($grp)" (procedure "_o461" line 12) (BST start line 12) invoked from within "_o461 start" ("eval" body line 1) invoked from within "eval $p $op $args" (procedure "_o81" line 7) (mrtObject all-mprotos line 7) invoked from within "$self all-mprotos start " (procedure "_o81" line 1) (mrtObject start line 1) invoked from within "$mrtObject_ start" (procedure "_o77" line 3) (Node start-mcast line 3) invoked from within "$node start-mcast" (procedure "_o3" line 5) (Simulator run-mcast line 5) invoked from within "_o3 run-mcast" I couldn't get where the error came from, it seems to me the lookup{} procedure return a -1 such that when $ns get-node-by-id -1, it surely can't locate Node_(-1) in the Node_ array. Could someone help to take a look at the problem? I also enclosed the modified version of mcast5.tcl. thank you, shuqian yan ---559023410-851401618-920762181=:29077 Content-Type: TEXT/PLAIN; charset=US-ASCII; name="mcast5.tcl" Content-Transfer-Encoding: BASE64 Content-ID: Content-Description: IyMgU2ltcGxlIEJpLWRpcmVjdGlvbmFsIFNoYXJlZCBUcmVlIG11bHRpY2Fz dCB0ZXN0DQojIG9uIGEgYmluYXJ5IHRyZWUNCg0Kc2V0IG5zIFtuZXcgU2lt dWxhdG9yIC1tdWx0aWNhc3Qgb25dDQpzZXQgZiBbb3BlbiBvdXQtbWM4LnRy IHddDQokbnMgdHJhY2UtYWxsICRmDQpzZXQgbmYgW29wZW4gb3V0LW1jOC5u YW0gd10NCiRucyBuYW10cmFjZS1hbGwgJG5mDQoNCnNldCBkZWdyZWUgMiA7 I2JpbmFyeQ0Kc2V0IGRlcHRoICA0IDsNCnNldCBuKDApIFskbnMgbm9kZV0N CnNldCBuaWR4IDENCmZvciB7c2V0IGwgMX0geyRsPCRkZXB0aH0ge2luY3Ig bH0gew0KCXNldCBub2Rlc19hdF9sZXZlbCBbZXhwciBwb3coJGRlZ3JlZSwg JGwpXQ0KCWZvciB7c2V0IGsgMX0geyRrIDw9ICRub2Rlc19hdF9sZXZlbH0g e2luY3Iga30gew0KCQkjY3JlYXRlIG5ldyBub2RlDQoJCWV2YWwgc2V0IG4o JG5pZHgpIFskbnMgbm9kZV0NCgkJI2xpbmsgaXQgdG8gdGhlIHBhcmVudA0K CQlzZXQgcCBbZXhwciAoJG5pZHggLSAxKS8kZGVncmVlXQ0KCQkkbnMgZHVw bGV4LWxpbmsgJG4oJHApICRuKCRuaWR4KSAxLjVNYiBbZXhwciAkZGVwdGgq MTAvcG93KDIsJGwpXW1zIERyb3BUYWlsDQoJCSNvcmllbnQgdGhlIGxpbmsN CgkJIyBwYXJlbnQgcCBoYXMgY2hpbGRyZW4gWyRwKiRkZWdyZWUrMS4uKCRw KzEpKiRkZWdyZWVdDQoJCSMgc28gbWlkZGxlIHBvaW50IGlzICRwKiRkZWdy ZWUrKCRkZWdyZWUrMSkvMg0KCQlzZXQgbXAgW2V4cHIgJHAqJGRlZ3JlZSAr ICgkZGVncmVlKzEpLzIuMF0NCgkJaWYgeyRuaWR4IDwgJG1wfSB7DQoJCQlz ZXQgb3JpZW50YXRpb24gImxlZnQtZG93biINCgkJfSBlbHNlaWYgeyRuaWR4 ID4gJG1wIH0gew0KCQkJc2V0IG9yaWVudGF0aW9uICJyaWdodC1kb3duIg0K CQl9IGVsc2Ugew0KCQkJc2V0IG9yaWVudGF0aW9uICJkb3duIg0KCQl9DQoJ CSRucyBkdXBsZXgtbGluay1vcCAkbigkcCkgJG4oJG5pZHgpIG9yaWVudCAk b3JpZW50YXRpb24NCiMJCSRucyBkdXBsZXgtbGluay1vcCAkbigkcCkgJG4o JG5pZHgpIHF1ZXVlUG9zIFtleHByIDEvcG93KCRkZWdyZWUsICRsKV0NCg0K CQkjYXR0YWNoIHNlbmRlcnMNCgkJc2V0IGNicigkbmlkeCkgW25ldyBBZ2Vu dC9DQlJdDQoJCSRjYnIoJG5pZHgpIHNldCBkc3RfIDB4ODAwMw0KCQkkY2Jy KCRuaWR4KSBzZXQgY2xhc3NfIFtleHByIDEwMCArICRuaWR4XQ0KCQkkY2Jy KCRuaWR4KSBzZXQgaW50ZXJ2YWxfIDIwbXMNCgkJJG5zIGF0dGFjaC1hZ2Vu dCAkbigkbmlkeCkgJGNicigkbmlkeCkNCg0KCQkjYXR0YWNoIHJlY2VpdmVy cw0KCQlzZXQgcmN2cigkbmlkeCkgW25ldyBBZ2VudC9OdWxsXQ0KCQkkbnMg YXR0YWNoLWFnZW50ICRuKCRuaWR4KSAkcmN2cigkbmlkeCkNCg0KCQlpbmNy IG5pZHgNCgl9DQp9DQoNCiRucyBydHByb3RvIERWDQoNCiMjIyBTdGFydCBt dWx0aWNhc3QgY29uZmlndXJhdGlvbjogDQpzb3VyY2UgLi4vLi4vbWNhc3Qv QlNULTQudGNsDQoNCkJTVCBzZXQgUlBfKFtleHByIDB4ODAwM10pICRuKDAp DQoNCg0Kc2V0IG1wcm90byBCU1QNCnNldCBtcnRoYW5kbGUgWyRucyBtcnRw cm90byAkbXByb3RvIHt9XQ0KIyMjIEVuZCBvZiBtdWx0aWNhc3QgY29uZmln dXJhdGlvbg0KDQokbnMgY29sb3IgMTAzIE5hdnkgICAgICA7I2NicnMNCiRu cyBjb2xvciAxMDUgQmx1ZVZpb2xldA0KDQokbnMgY29sb3IgMzAgcHVycGxl ICAgOyNncmFmdHMNCiRucyBjb2xvciAzMSBncmVlbiAgICA7I3BydW5lcw0K DQokbigwKSBjb2xvciBibHVlICAgICAgICA7I1JQDQoNCiRuKDApIGNvbG9y IE5hdnkNCiRuKDMpIGNvbG9yIEJsdWVWaW9sZXQNCg0KJG5zIGF0IDAgICAg IiRjYnIoMykgc3RhcnQiDQokbnMgYXQgMC4wNSAiJGNicig1KSBzdGFydCIN CiRucyBhdCAwLjIgICIkbig0KSBqb2luLWdyb3VwICAgJHJjdnIoNCkgMHg4 MDAzIg0KJG5zIGF0IDAuMyAgIiRuKDYpIGpvaW4tZ3JvdXAgICAkcmN2cig2 KSAweDgwMDMiDQokbnMgYXQgMC40ICAiJG4oNCkgbGVhdmUtZ3JvdXAgICRy Y3ZyKDQpIDB4ODAwMyINCiRucyBhdCAwLjUgICIkbig2KSBsZWF2ZS1ncm91 cCAgJHJjdnIoNikgMHg4MDAzIg0KJG5zIGF0IDAuNTUgImZpbmlzaCINCg0K cHJvYyBmaW5pc2gge30gew0KICAgICAgICBnbG9iYWwgbnMNCiAgICAgICAg JG5zIGZsdXNoLXRyYWNlDQoNCiAgICAgICAgcHV0cyAicnVubmluZyBuYW0u Li4iDQogICAgICAgIGV4ZWMgbmFtIG91dC1tYzggJg0KICAgICAgICBleGl0 IDANCn0NCg0KJG5zIHJ1bg0KDQoNCg== ---559023410-851401618-920762181=:29077-- From twu2@eos.ncsu.edu Sun Mar 7 02:05:50 1999 From: twu2@eos.ncsu.edu (twu2@eos.ncsu.edu) Date: Sat, 6 Mar 1999 21:05:50 -0500 (EST) Subject: queue length Message-ID: <199903070205.VAA22565@loki.csc.ncsu.edu> Hi, A queue length of 6 or 8 (packets?) is used in some of the test-suite examples, are they typical values of queue length in real router? Thanks. From msyed@badlands.nodak.edu Sun Mar 7 20:18:34 1999 From: msyed@badlands.nodak.edu (Mahbubur Syed) Date: Sun, 07 Mar 1999 14:18:34 -0600 Subject: ISIMADE'99 call for papers Message-ID: <3.0.3.32.19990307141834.006c2e1c@badlands.nodak.edu> --=====================_920859514==_ Content-Type: text/plain; charset="us-ascii" Dear Colleague: Please find attached a call for paper. I am also attching a pdf version of the CFP. Please let me know if you or some one from your organisation would be willing to submit a paper. It will be highly appreciated, if you take the trouble also to circulate among interested faculty and your network. My apologies if you received this email more than once. Best Regards. Thanks. Syed M Rahman ******** CALL FOR PAPERS *********** INTERNATIONAL SYMPOSIUM ON INTELLIGENT MULTIMEDIA AND DISTANCE EDUCATION In Conjunction with The 11th International Conference on Systems Research, Informatics and Cybernetics 2-7 August 1999 in Baden-Baden, Germany ======================================== More Details at URL: http://venus.ee.ndsu.nodak.edu/ee/research/conferences/isimade/ ========================================== Symposium Co-Chairs Dr. Mahbubur Rahman Syed, North Dakota State University, USA Dr. Orlando R. Baiocchi, North Dakota State University, USA Conference Chair Dr. G. E. Lasker I.I.A.S, Scool of Computer Science, University of Windsor, canada ======= IMPORTANT DATES ====== Extended abstract/full paper to symposium chair 25 April 1999 Notification of acceptance 12 May 1999 Receipt of camera-ready papers by the conference chair 1 June 1999 ====== MAIN TOPICS ======= STREAMS: MULTIMEDIA stream and DISTANCE EDUCATION stream. Topics include, but not limited to, following. In Multimedia Stream: - Internet Applications - Applications in visualization, human computer interactions - Applications in virtual environments - Industrial, medical and other applications - Multimedia in electronic commerce applications - Video, audio & image processing and retrieval - Vision and Image Processing - Image data structures and databases - video, audio and image compression techniques - Neural network and AI applications - Next generation applications - Multimedia communications and databases - Multimedia standards - Intelligent multimedia - Document image understanding - Animation - Tools for multimedia production and services - Networked Multimedia - Digital Signal Processing - Distributed Intelligent Systems - Multimedia and Human Computer Interaction - Integration of MM Information - Interactive MM - Hypermedia - Representation of MM Information - Integration of Graphics & Vision - Synchronization of MM Information - MM and Virtual Reality - Education and Applications of MM - Cooperative Information Systems In Distance Education (DE) Stream: - DE delivery, experience and tools development at secondary schools, universities, business and industries and in all academic areas such as computer science, arts, engineering, business, medicine etc. - DE, the Internet and Internet-based visualization - Using computer graphics; visualization for education; video- and Multimedia-based Learning - Cognitive aspects of visual teaching and learning - New Educational paradigms such as interactive classrooms, tele-immersion, networked tele-collaboration and WebTV etc. - Internet-based visualization - Hardware and software tools for educational applications - Instructional Management, student assessment, student support services - Virtual Education environment; Virtual university - concepts and futures - Needs Assessments and Perspectives including National Policies and Regional Programs - Organizational Models of Distance Education Institutions and case studies ====== SUBMISSIONS ======= Submit electronic version (Word, postscript or rtf format) of the original research work, not submitted elsewhere, as an extended abstract (limited to 4 pages) or full paper (not exceeding 15 double-spaced pages) to the following email address: msyed@badlands.nodak.edu Alternatively, submit three copies in hard copy form to the symposium Co-chair at the following address. Dr. Mahbubur Rahman Syed Electrical Engineering Department, EERoom 101 North Dakota State University Fargo, ND 58105, USA Email: msyed@badlands.nodak.edu Phone: (701) 231 7689 Fax: (701) 231 8677 A cover sheet should include address, phone/fax numbers, email address of the corresponding author. All papers must be in English. All submitted papers will be refereed. Authors should indicate, at the time of submission, their preferences to present their papers either in the oral or poster sessions as detailed below. SESSIONS: There will be oral sessions and poster sessions for presentation of papers in the symposium. Authors should indicate their preferred mode of presentation at the time of submission of their papers. The paper review and acceptance process will be same for both type of presentation options and all accepted papers will be published in the proceedings. At least one of the authors must present their paper in the accepted presentation mode. However, poster session authors may arrange for their papers to be presented by a symposium attendee. Authors of accepted papers for the poster presentation must submit their posters along with the camera-ready papers to the conference chair. The authors who can not attend the symposium due to special circumstances must mention at the time of submission and may be considered for poster presentations only. ======================================= --=====================_920859514==_ Content-Type: application/pdf; name="ISIMADE99.pdf" Content-Transfer-Encoding: base64 Content-Disposition: attachment; filename="ISIMADE99.pdf" JVBERi0xLjINCiXi48/TDQoxIDAgb2JqDQo8PA0KL1R5cGUgL1hPYmplY3QNCi9TdWJ0eXBlIC9J bWFnZQ0KL05hbWUgL0ltMQ0KL1dpZHRoIDYwMw0KL0hlaWdodCAxNzUNCi9CaXRzUGVyQ29tcG9u ZW50IDgNCi9Db2xvclNwYWNlIDIgMCBSDQovTGVuZ3RoIDYxODMNCi9GaWx0ZXIgL0ZsYXRlRGVj b2RlDQo+Pg0Kc3RyZWFtDQpIieyXbXqrOAyFn8zqsqWErbGPZgkzv7IETwPY1pGOjA2kaVKrMzeA rQ9LL7IJoUuXLl26dOnSpUuXLl26dHk7uU7y6ijeQHqW2mTBqmdtXa7Tf11qJb6Kn8jW8Wv6wCQ9 TzJaH5i2ztZrpaPVYvFog28g1yjiAY7mWcvofHkVmulptoQW8zQ1KL1dheEgDckAIYB84pO/MHmT Lr4v0gjOFqnQhjGUj3wBV0WjpfOaZ+FkJCteRRXHpEAqmKs4TVc3+YMAMBQ51Xpu1jXejWkTKzUM yn9OqtFKP+kaNARa7L1PV/pC2/HQUlW84q2JZK8uvlIhKRYNSxua1D/Jlnkgsci7UhrK15QFU166 AZJHrWh5U2vQqtG1wXW0GiU37XQFo1c5wlKHl0W0im2rAq1UYfQcI4T6qtrW65LAryAsVnRh89PZ EvfL4DIU0m8BLWGCoJUKAxVK3Fahtegwzyao3GcadXXgcFtEK7roaM2iEmjZwuIX0ZoVKFppmqpH HVpxMICrNTz26NrM6PZEjNjV5vdytRAfKBotyIJMzgKG2U/y0ThsRwsbGaCV7wkeQd6i6i5dswwz OytFTTczKql/QjQINg1XM3zVz2VTEIkVFkJOudu1smG/84Rs+AqXganu0lWJCXa2UGIu4mIxiL8j DlpYnuakoEo1WiVbbNpqZHt09aS/RsZuMWiZfWEnWvYw80ZohY7WdpGngfmesLXBqrIY7eABR1wF t9gJzM1obdNV0/7cfrZfVN6PQUvp4EFd+rRHMhKeiYiHfqiusVI3ucuvlE0b7x5323W7dOnSpUuX Ll26dOnCZBiGn/P1Y57A6w+usIuQ4ePZ+tEVdpHy6Wj96ApXZY7l8e90JbFfLlW0cer8f/wnpH+W /5O1eEHGs+X4utl5YD/gcAp3MJbA/DAMZLoKnqVAJof4g2UQSyZbGJ8ejH5kFDkY4SwZMvnLS9NB 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 itEsG1W95eimcdzV51bdC/pSWhnpBqTilgStxMWmLLMPw+FPkewLXQgdpNi+0WJDIYZKDg/DNFmD sk1CUQzjIt4FkRjSNvKop5kNDumeYYVzw/I63bOccHL9heF695pP3PYtyGHAxfgMJZ4bhgE5fN73 47vL4ZPmLwz/NwCUZOHhDQplbmRzdHJlYW0NCmVuZG9iag0KNSAwIG9iag0KPDwNCi9Qcm9jU2V0 IFsvUERGIC9UZXh0IC9JbWFnZUMgL0ltYWdlSV0NCi9Gb250IDw8DQovRjIgNiAwIFINCi9GNCA3 IDAgUg0KL0Y2IDggMCBSDQovRjggOSAwIFINCi9GMTAgMTAgMCBSDQovRjEzIDExIDAgUg0KL1Qy IDEyIDAgUg0KL1Q0IDEzIDAgUg0KL1Q4IDE0IDAgUg0KPj4NCi9YT2JqZWN0IDw8DQovSW0xIDEg MCBSDQo+Pg0KL0V4dEdTdGF0ZSA8PA0KL0dTMSAxNSAwIFINCj4+DQovQ29sb3JTcGFjZSA8PA0K L0NTMSAyIDAgUg0KPj4NCj4+DQplbmRvYmoNCjIgMCBvYmoNClsvSW5kZXhlZCAvRGV2aWNlUkdC IDI1NSAxNyAwIFJdDQplbmRvYmoNCjE3IDAgb2JqDQo8PA0KL0ZpbHRlciAvQVNDSUk4NURlY29k ZQ0KL0xlbmd0aCA5OTINCj4+DQpzdHJlYW0NCiEhISJMISElTkxKRkVRQ24sVThuITc6MzhpOiRh OW4uNVRoJi5uPUIrUmZwcm4uN2tTJjVfai1ALjRfSG4uOi0+DQomPFFBbVReV01zbi48RCkmQ0Ju WGk6JTxJbi9xYCMrOyIjYitSZ0wtbi90IWMrQWhQTUAuNTpYbjAhOE4rSFooOA0KVF5YKS5uMCNP OStPS1UjaTolbFluMVhrMzBHKl8tK1JoJz1uMVssczBNcTZtQC41amhuMV1DXjBUYmNYVF5YWT4N Cm4xX1pJMFtUO0NpOiZHaW4zQCFDNVMzRU0rUmhXTW4zQjguNVokcjhALjZGI24zRE5uNWBrSiNU Xlk0Tm4zRmVZDQo1Z10hY2k6JyMkSjU/Nzg6XVR1XSZGYEw9bjUoaC46ZEZNSDsiLjpobjUrKW46 azglM09SUSk+bjUtQFk6cilRcw0KZC1zbGluNS9XRD9pXVwoJkZhJ01uNmRzPj9wTzNoOyIuayNu Nmc1KUAiQGBTT1JRWU5uNmlLaUApMjg+ZC10SCQNCm42a2JURHVmQkgmRmFXXW44TClORSdXbzM7 Ii9GM244TkA5RS5JRnNPUlI0Xm44UFckRTU6c15kLXUjNG44UmpzDQpKOk4wIyEuXVRNbjoxTi5K LlY0IytSam44bjozZG5KNUdgY0AuOFxjbjo2JllKPDk4TlReW0s5bjo4PURKQyplOQ0KaTopOWRu O21ZPk86Xm9DK1JrSUhuO29wKU9BUEcuQC45N3NuO3IxaU9IQXNuVF5cJkluO3RIVE9PM0tZaTop aXQNCm49VGROVEZnVWMrUmwkWG49VyY5VE1ZLU5ALjloLm49WT0kVFRKWjlUXlxWWW49W1NkVFs8 MiRpOipFL24/O29eDQpZUnA8LitSbFRobj8+MUlZWWFobkAuOkM+bj9ASDRZYFNAWVReXTFpbj9C XnRZZ0RtRGk6KnU/MFlrS25eXTxsPg0KJkZkSVhuQSRhSV5kLkQpOyIyOC5uQScjNF5qdHBpT1JV JlluQSk5dF5xZkhUZC4iai9uQStQX2NpRVJeJkZlJGgNCm5CYGxZY3A3Kkk7IjJoPm5CYy5EZCIo VzRPUlVWaW5CZUUvZChvLnRkLiNFP25CZ1tPaTotNm8hOlxuWG5ER0dZDQppJVhaWTVrKl0ubkRJ XkRpLEoyREpGTUtZbkRLdS9pMztfL18hcDovbkRONm9pOiwrX25ETmcqbkYtR0luLj4qWQ0KK1Ju a1NuRi9eNG41L1dEQC48WiluRjF0dG48IS8vVF5fSFRuRjQ2X25CZ1tvaTotNyp+Pg0KZW5kc3Ry ZWFtDQplbmRvYmoNCjE4IDAgb2JqDQo8PA0KL1R5cGUgL0hhbGZ0b25lDQovSGFsZnRvbmVUeXBl IDENCi9IYWxmdG9uZU5hbWUgKERlZmF1bHQpDQovRnJlcXVlbmN5IDYwDQovQW5nbGUgNDUNCi9T cG90RnVuY3Rpb24gL1JvdW5kDQo+Pg0KZW5kb2JqDQoxNSAwIG9iag0KPDwNCi9UeXBlIC9FeHRH U3RhdGUNCi9TQSBmYWxzZQ0KL09QIGZhbHNlDQovSFQgL0RlZmF1bHQNCj4+DQplbmRvYmoNCjE5 IDAgb2JqDQo8PA0KL1R5cGUgL0ZvbnREZXNjcmlwdG9yDQovQXNjZW50IDANCi9DYXBIZWlnaHQg MA0KL0Rlc2NlbnQgMA0KL0ZsYWdzIDQNCi9Gb250QkJveCBbLTMgLTIwMSA4ODkgNzY1XQ0KL0Zv bnROYW1lIC9DR0xNRUsrTVNUVDMxYzM3Nw0KL0l0YWxpY0FuZ2xlIDANCi9TdGVtViAwDQovQ2hh clNldCAoL0c3NS9HM0EvRzQ0L0c2Mi9HMjcvRzQ1L0c0Ri9HNjMvRzZEL0c0Ni9HNTAvRzZFL0c2 NS9HMjAvRzc5L0c2Ri9HNTIvRzY2L0c3MC9HNDkvRzUzL0c1NC9HNjgvRzcyL0cyRC9HNDEvRzY5 L0c3My9HNEMvRzc0L0czOS9HNDMvRzREL0c2MSkNCi9Gb250RmlsZTMgMjAgMCBSDQo+Pg0KZW5k b2JqDQoyMCAwIG9iag0KPDwNCi9GaWx0ZXIgL0ZsYXRlRGVjb2RlDQovTGVuZ3RoIDM3NzgNCi9T dWJ0eXBlIC9UeXBlMUMNCj4+DQpzdHJlYW0NCkiJTFNrUJNXGs4H5MvxQrxA6DZf+n3Y6sjUK9fA Wm0R8BPBpaJyEQEDBggQLgkBQrgGEF0BQa4JBBIuCQmhYMNF44Uq6qgdUdxt647rBZl2tjPrOFu7 PYET2I07/bE/zrzvnPO87znneZ8HY7g4MTAM2xhCRx4Oi9h2+OixY77eqb58/vvdHba9az1q7bt5 LB4PJ5mklhH+n/Pnfw9rWbB4PVSvgy83dPLWGTYyPsEwF9Zq1/VuHh/yqI+3eG3b6e3H/+PeL0IO hEdGRR+PS0gSnE7Pp/n+tG8w7edHB/jQPnzaz5/2O0AH+NIBobRfAO2/mw4IowP8aZ/dND+IDjhA +/vQAQE0fzftF0T7+9L+jsJAmu+odeC96YAgmu9L+4XQfD/aN4j2c+ShdID3//2Dga33ZGxl7GAE YcGMEOdwRiQWhUU7CZyEWAYmdpY4yx2QVuw81osNYmcxLabHzmH1WBOmxvoxA9aANWMdWBfWjQ1h f8YasRasE9NgOuwCdhFrx1RYD9aHDWB1WBvjEweTDCcGk/EhwwsLw5KwRqcTTi+ckPMfnP2dDzoX uQS6zDGjcF/8EIvFagL7wdtVoau6V42vTlo9sUa45u3a/a7erq2u/2RvZC8HspdP2qJ4uDsnyj7P RAI8yjbPZNvJxTabmrPsBU2LXjh7gOdyafExB7mVIpDzMZmzKdH7T19E7Pvsy+0pIGU7AkXoI+Jk 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 u16V8t9V46UlFmMRWdhU3FjaADbN39/Br/gext8d8of8F30Bps896BpmwwkPWQdpup3BmXZXu7Md CJAqIZMKX37V7nudfN33Tm9eEMDJAb63sbuhV9+rG9RFdZd0o41jTaBpLN4ygU9etXmi5Ki7OxjG Lpq6tQyhdVW4JDRlrbAVXSi8UGaXOg71vxXLnwUFs7X3V7Ap+logTgTiw7HxSDw813+nB/TcXnZ8 iX/+sFl3m7yjm68frwVoVM432OtoykN5lC4lLXNVOsvs4EJZaVcJLjlj0paT5fValRyjLmh8DYRX H2240TDYHDFHzZfNUVPE8AW1WDwmAVckvcdfxk41SmryCGVeeVF+VV5ZpuJEHdCcOGw6iAtShxML tUIk2jfw0QnyxELVnyGGJfwIYzmBwWU2tmW4wvJjJSXiF52v+EBGVFspu4pw1Hjqg+yrNxCxjOO+ vs6nP4leG20Dg+g8r8RY1HyWZdiZ7LYMfGtq7Ozcw2d47+ZkFksoQOW823gURzsORe5nkBn3petQ hCXl8AnLj/c+yOsoIzpKbVJa6ajxav1sN/qHLDG8b8BKszSnhzyhXpAchWt8wXNpHGYDClNLaRvb uKkf8+CrifTU8xtfcBPbedCwmQUVySyuAHXAjjTgOs9L42wI/wm/EIJTDQplbmRzdHJlYW0NCmVu ZG9iag0KMjEgMCBvYmoNCjw8DQovVHlwZSAvRm9udERlc2NyaXB0b3INCi9Bc2NlbnQgNzMyDQov Q2FwSGVpZ2h0IDY4MQ0KL0Rlc2NlbnQgLTIxMw0KL0ZsYWdzIDI2MjE3OA0KL0ZvbnRCQm94IFst MTk0IC0yNTAgMTM0NiA5MzRdDQovRm9udE5hbWUgL0Jvb2ttYW4tRGVtaQ0KL0l0YWxpY0FuZ2xl IDANCi9TdGVtViAxNjcNCi9YSGVpZ2h0IDUwMg0KPj4NCmVuZG9iag0KMjIgMCBvYmoNCjw8DQov UHJvY1NldCBbL1BERiAvSW1hZ2VCIF0NCj4+DQplbmRvYmoNCjEyIDAgb2JqDQo8PA0KL05hbWUg L1QyDQovVHlwZSAvRm9udA0KL1N1YnR5cGUgL1R5cGUzDQovUmVzb3VyY2VzIDIyIDAgUg0KL0Zv bnRCQm94IFswIC0xNSA2MSA1N10NCi9Gb250TWF0cml4IFswLjAxMzMzIDAgMCAwLjAxMzMzIDAg MF0NCi9GaXJzdENoYXIgNDANCi9MYXN0Q2hhciA4NQ0KL0VuY29kaW5nIDIzIDAgUg0KL0NoYXJQ cm9jcyAyNCAwIFINCi9XaWR0aHMgWzM0IDM0IDAgMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDAgMCAN CjAgMCAyNyAwIDAgMCAwIDAgMCA1MSAwIDUwIDU3IDQ2IDAgMCANCjAgMzYgMCAwIDQzIDY3IDU4 IDU4IDAgMCA1NCA0OCA0NiA1NSBdDQo+Pg0KZW5kb2JqDQoyMyAwIG9iag0KPDwNCi9UeXBlIC9F bmNvZGluZw0KL0RpZmZlcmVuY2VzIFs0MC9HMjggL0cyOSA1OC9HM0EgNjUvRzQxIDY3L0c0MyAv RzQ0IC9HNDUgNzMvRzQ5IDc2L0c0QyAvRzREIC9HNEUgL0c0RiA4Mi9HNTIgL0c1MyAvRzU0IC9H NTUgXQ0KPj4NCmVuZG9iag0KMjQgMCBvYmoNCjw8DQovRzI4IDI1IDAgUg0KL0cyOSAyNiAwIFIN Ci9HM0EgMjcgMCBSDQovRzQxIDI4IDAgUg0KL0c0MyAyOSAwIFINCi9HNDQgMzAgMCBSDQovRzQ1 IDMxIDAgUg0KL0c0OSAzMiAwIFINCi9HNEMgMzMgMCBSDQovRzREIDM0IDAgUg0KL0c0RSAzNSAw IFINCi9HNEYgMzYgMCBSDQovRzUyIDM3IDAgUg0KL0c1MyAzOCAwIFINCi9HNTQgMzkgMCBSDQov RzU1IDQwIDAgUg0KPj4NCmVuZG9iag0KMjUgMCBvYmoNCjw8DQovTGVuZ3RoIDE5OA0KL0ZpbHRl ciAvRmxhdGVEZWNvZGUNCj4+DQpzdHJlYW0NCkiJnJA9CsJAEIVXUgQWhhwhcwHJP1sKUcEUglYe QC0tFK2To+UoOULKFJJxZs0iYmfxMbDz3s6byXKMMcd5UmCWYGHwlIC+gk4Nv8do0ql5vIAuK9DR AVPDZcMtLuVuiWyIqi3eb48z6GqFNKiQesuCOlVTq4iaGeMRKZ9GS0BPlggDy4SepULHcgtbWof3 Rr5o/G+UEPyJ//tf433mufmSxeVyOV1ut4fsNKopkA0qZmuq7S16u2wIes2H3IN+CTAAo8+5uQ0K ZW5kc3RyZWFtDQplbmRvYmoNCjI2IDAgb2JqDQo8PA0KL0xlbmd0aCAxOTcNCi9GaWx0ZXIgL0Zs YXRlRGVjb2RlDQo+Pg0Kc3RyZWFtDQpIiZzQOwrCQBAG4AkWwsLiETIXkLwMWwpRwRSCVh5ALS0U rZOj5Sg5QsoUwXFmN4loafGxsMPOzvzJAkNMcB6lmISYGjxHWt20ig3fh2jivni6apXlWgVHjA0f Wy7xke1XyA+CfIeP+/OiVb5GmBCBR1SyCohqKKiBJbWsA5/N6MUIpk45cSrPqcFprMJqR9Lkl88N /+MG+u7XWu6/ZvSZa5hzmLvfQ3bqLN+2kJ1ld8lAspBMJButNhzkQau3AAMASGW25g0KZW5kc3Ry ZWFtDQplbmRvYmoNCjI3IDAgb2JqDQo8PA0KL0xlbmd0aCA5MQ0KL0ZpbHRlciAvRmxhdGVEZWNv ZGUNCj4+DQpzdHJlYW0NCkiJMjJXMFAAYSMDBRNDhRRDXq5CXi5DY6AIWAAklZzLy+XkyculH65g aAykPIASQMopwFkBRHv6KpQUlabycnm6KDCw44b/cQJ8uni5XIFWB/JyAQQYAKO2KmwNCmVuZHN0 cmVhbQ0KZW5kb2JqDQoyOCAwIG9iag0KPDwNCi9MZW5ndGggMjAwDQovRmlsdGVyIC9GbGF0ZURl Y29kZQ0KPj4NCnN0cmVhbQ0KSIlk0T0OgkAQBeBHKEg22XAE9gZKsTUENZHCRCsPoJYWGq3haByF I1BSEHEe/vCX3eTbnZ3iTdaGZtktGxprzTnU6qaV/VSlQE5XrZJUq8VRuoStPAjJfmV4TXfmcX9e tErXpm0LZG37J0c0BwhmvAB/RgN4M2rAHRKTCrEzpCQlSgxwKlII2YCa5G7NaGPgNYw24gVfdg8Y tCHehJq4EyriTCglQYEeJuaJlR8Oh8ryjuiHy/EjdARftNrITx20egswAMBB2jcNCmVuZHN0cmVh bQ0KZW5kb2JqDQoyOSAwIG9iag0KPDwNCi9MZW5ndGggMjI5DQovRmlsdGVyIC9GbGF0ZURlY29k ZQ0KPj4NCnN0cmVhbQ0KSImkkD0KwkAQhSekEBYWj5C5gPhDEu0Ef8AUglYeQC0tFK0NeLGAFxG8 wIKNRcj4djei2Np8A/tmZ968pMMd7nGry/GAk5Q3Xa32WsUpWyHpe22902qUadVecZyizKCgjBZj Rn87m/PxcNpqlU1Y5ElDEckpEKmI6IwHoqbcwFAKx9yRLCvH0hGN5zw0kAzYkDK84WMFRiKXws69 Fhgo94Kw4pFbSs3gQ/IM/2bwO7nmZ+/j7cd68z69Z+/fYISp7yq/LvVX+wTqTGw+DTFgJKXLDRus DZunVlPEv9TqJcAALITFsw0KZW5kc3RyZWFtDQplbmRvYmoNCjMwIDAgb2JqDQo8PA0KL0xlbmd0 aCAxOTcNCi9GaWx0ZXIgL0ZsYXRlRGVjb2RlDQo+Pg0Kc3RyZWFtDQpIiTI1VzBQMANiU1MQSjHk 5Srk5TKxBIqAxUBSybm8XE6evFz64QomlkDKAygBpJwCnBWAyvU9fRVKikpTebk8XRQYGBjs//// D6QYIRSIC6L4IRQzhGKEUAxQqh5C2UMo+f9AZSAdQOoBAzuI+gCh/oAkmP//g1D/gcYgUQ1QigFM HcBGPWCopx6F1Qao7Q2MmA6Euhrqhx8QHz2AeBPsW6jfkUKiHjmUoGHGjhKe9shhDQp5Xi5XYEwF 8nIBBBgAGR2qQg0KZW5kc3RyZWFtDQplbmRvYmoNCjMxIDAgb2JqDQo8PA0KL0xlbmd0aCAxMDgN Ci9GaWx0ZXIgL0ZsYXRlRGVjb2RlDQo+Pg0Kc3RyZWFtDQpIiTIxUzBQAGETIwVTU4UUQ16uQl4u Y5CIAUgAxEjO5eVy8uTl0g9XMDYDUh5ACSDlFOCsAFSu7+mrUFJUmsrL5emiwAAE/KQRzP///yeN AAJ70gjS7cBnOWke5OVyBYZdIC8XQIABAAskXoANCmVuZHN0cmVhbQ0KZW5kb2JqDQozMiAwIG9i ag0KPDwNCi9MZW5ndGggOTgNCi9GaWx0ZXIgL0ZsYXRlRGVjb2RlDQo+Pg0Kc3RyZWFtDQpIiTI2 UzBQMAZhYwVTU4UUQ16uQl4uYwMFEAQKgKSSc3m5nDx5ufTDFYwNgJQHUAJIOQU4KwCV63v6KpQU labycnm6KDAwMDATg/8D0WDBxLqZl8sVGAiBvFwAAQYAJ0dWKg0KZW5kc3RyZWFtDQplbmRvYmoN CjMzIDAgb2JqDQo8PA0KL0xlbmd0aCA5Nw0KL0ZpbHRlciAvRmxhdGVEZWNvZGUNCj4+DQpzdHJl YW0NCkiJMjFWMFAwA2ITIwVTU4UUQ16uQl4uY5CIAUgAxEjO5eVy8uTl0g9XMDYDUh5ACSDlFOCs AFSu7+mrUFJUmsrL5emiwMD8////YU0AAT9JBC+XKzDsAnm5AAIMAM2Wl3ENCmVuZHN0cmVhbQ0K ZW5kb2JqDQozNCAwIG9iag0KPDwNCi9MZW5ndGggMTgzDQovRmlsdGVyIC9GbGF0ZURlY29kZQ0K Pj4NCnN0cmVhbQ0KSIm00UEKglAQANARI+HDx27g3EBbaO0EK8hFUKsOUC1bFAUtAj2aR/EILl2I vxnN+B/XMTO8YWZ2Ey0wwIhrjmGI57kUNymoCygIXp2uUiSpFP6RJsS2J9mvkM79dIeP+/MiRbpG AKVasJiGyQZqJjbwVGVQMu5AwTgGtsoNgLG+tB2gM4E35D+m8LI6lj0B48DM1sgpRxTgapTgjakg 1qgh02hAjVHqT0ixoU8dpPgIMACjqIGDDQplbmRzdHJlYW0NCmVuZG9iag0KMzUgMCBvYmoNCjw8 DQovTGVuZ3RoIDE3Ng0KL0ZpbHRlciAvRmxhdGVEZWNvZGUNCj4+DQpzdHJlYW0NCkiJTNAxDoJQ DAbgRzCSNHnhCPQGoOERNxLURAYTnTyAODpodIajcRSOwMhAwD6B5B/6tWk7NDU7jjiRMFs2houN ppem2HYi27DF/akpyzWFN44TSScZSMoue5b1MD/z5/19aMoPrFQ5Vq5SKRiAPuiBLuiACi3BVFzN BuJ61he9Wc9aTbrWetKxNpPK2v7t5IDFHhzAEa3AGmzAFuzAHhzAcVHTUV5+1fQTYAAyGF5WDQpl bmRzdHJlYW0NCmVuZG9iag0KMzYgMCBvYmoNCjw8DQovTGVuZ3RoIDIyOQ0KL0ZpbHRlciAvRmxh dGVEZWNvZGUNCj4+DQpzdHJlYW0NCkiJtJGxCsIwEIavOAiB0EfwXkDaSqNuhapgB0EnH0AdHRSd 20fro/QROnYQz7/1HCquhiQfJJf77/64OYc84XHEbtrOY2TNxRoX4zhkN3vfHc7WpJk1wZ5dDKxx A6TbBSM+yDZ8u95P1mRLFmkoF4yChtgfRATUQCJSASOREvBFsNNAni28LhChioY8nOc1chSU1Igu KanwFqtCpppGJWQa8ktqRT4oOgwLT5D3C9CC5uAf+KmntfQL1Kq1B+1I+9NuGyK4kPcNUZfUs4+D 6qe6q16r8+9/sGaFf9tZ8xJgAPyJw4UNCmVuZHN0cmVhbQ0KZW5kb2JqDQozNyAwIG9iag0KPDwN Ci9MZW5ndGggMjEyDQovRmlsdGVyIC9GbGF0ZURlY29kZQ0KPj4NCnN0cmVhbQ0KSImM0cEKgkAQ BuCVPQgLi4/gvIEGrVfBCvIQ1KkHqI4dijqvj+aj+AgeO0jbzI6WewuRD3bWf2bQLCGHAl9TgDFw Xmh108rkQA8eUOl01aqqtcqOYHJkiwWk2q8Ar2f1Dh7350Wreg1CiNg5hwjLpEzCSCYKECP2i3Qj rSiJLqD/m45TuinM01A/+Z7aRsFkI3EwfMm4APuryc7flP0EbStfPkUOPhP7RTOc706zzNds8Xs/ bso7JATFeCQxMBTDs45YohGlVhv8UwetPgIMAH4zph0NCmVuZHN0cmVhbQ0KZW5kb2JqDQozOCAw IG9iag0KPDwNCi9MZW5ndGggMjQ2DQovRmlsdGVyIC9GbGF0ZURlY29kZQ0KPj4NCnN0cmVhbQ0K SIlE0D1uwzAMBWAaHQIIEHIE8gJBElT52QSkLVAPBdqpB2g7ZkjQztbRchQfIaOGwCz57KLLJ1iU yCenvazkXhZrSTvZbOVzHcMphpRseyWb3Vj7OMZwaGNYvktKtjxbxZbD64PY+WX7It/nn68Y2kdR LXeqWolYtSdqbIOI8kDuDVZ4hT28THKlXKhT0y722a/XTNZxgDqqkw2kUYa+VfBR/oer9597HLvo NorpijzdmG066mVGwXpc/JoO0D7cK6zwRvMMGc6gRya2R7hs/djGFcqEKbCDSkhCSOXOkJORrft7 TPUcMTzZ73+L4VeAAQA1AZrdDQplbmRzdHJlYW0NCmVuZG9iag0KMzkgMCBvYmoNCjw8DQovTGVu Z3RoIDkzDQovRmlsdGVyIC9GbGF0ZURlY29kZQ0KPj4NCnN0cmVhbQ0KSIkyMVMwAEMTMwVTU4UU Q16uQl4uE4goUABEJefycjl58nLphwNVASkPoASQcgpwVgAq1/f0VSgpKk3l5fJ0UWAAAWbyyP// QXiUhJC8XK7AIA/k5QIIMABWh8PJDQplbmRzdHJlYW0NCmVuZG9iag0KNDAgMCBvYmoNCjw8DQov TGVuZ3RoIDE2MA0KL0ZpbHRlciAvRmxhdGVEZWNvZGUNCj4+DQpzdHJlYW0NCkiJ5JAxCsJAEEVH UiwMDB4hcwGJgaytEBXcQtDKA6ilhaJ1crQ9ikdImUIy/jV4Cofhffh/fjPe61y9zkr1UK/nUvgm XCUbxmLMTlfhOggXR608ZIsEUu9Xivsi7PRxf16Ew1ops4HcH3Fib3Jt4rQl63+M1HSUx+++CLMc 2SU2fSIqhPoAZmagM4tEuRmOGoMFQ3iDxx+EPwIMAKB4hOkNCmVuZHN0cmVhbQ0KZW5kb2JqDQo0 MSAwIG9iag0KPDwNCi9Qcm9jU2V0IFsvUERGIC9JbWFnZUIgXQ0KPj4NCmVuZG9iag0KMTMgMCBv YmoNCjw8DQovTmFtZSAvVDQNCi9UeXBlIC9Gb250DQovU3VidHlwZSAvVHlwZTMNCi9SZXNvdXJj ZXMgNDEgMCBSDQovRm9udEJCb3ggWzMgOCAzMCAzNV0NCi9Gb250TWF0cml4IFswLjAxMzMzIDAg MCAwLjAxMzMzIDAgMF0NCi9GaXJzdENoYXIgMTgzDQovTGFzdENoYXIgMTgzDQovRW5jb2Rpbmcg NDIgMCBSDQovQ2hhclByb2NzIDQzIDAgUg0KL1dpZHRocyBbMzQgXQ0KPj4NCmVuZG9iag0KNDIg MCBvYmoNCjw8DQovVHlwZSAvRW5jb2RpbmcNCi9EaWZmZXJlbmNlcyBbMTgzL0dCNyBdDQo+Pg0K ZW5kb2JqDQo0MyAwIG9iag0KPDwNCi9HQjcgNDQgMCBSDQo+Pg0KZW5kb2JqDQo0NCAwIG9iag0K PDwNCi9MZW5ndGggMTM1DQovRmlsdGVyIC9GbGF0ZURlY29kZQ0KPj4NCnN0cmVhbQ0KSIkyNlEw UDBWsFAwBlKmCimGvFyFvFxG5kBRAwUgBZJKzuXlcvLk5dIPB4oAKQ8I5RTgrABUru/pq1BSVJrK y+XpovD/QP3/fwz8//8wsP//wMD4/wEDAxgfYGCob2BgsIdhBgYGeVwYWR1IH8wMkHkgc0Hmg+zh 5XIFOiqQlwsgwABQlzGhDQplbmRzdHJlYW0NCmVuZG9iag0KNDUgMCBvYmoNCjw8DQovUHJvY1Nl dCBbL1BERiAvSW1hZ2VCIF0NCj4+DQplbmRvYmoNCjE0IDAgb2JqDQo8PA0KL05hbWUgL1Q4DQov VHlwZSAvRm9udA0KL1N1YnR5cGUgL1R5cGUzDQovUmVzb3VyY2VzIDQ1IDAgUg0KL0ZvbnRCQm94 IFsxIC0xIDYyIDYzXQ0KL0ZvbnRNYXRyaXggWzAuMDEyMDUgMCAwIDAuMDEyMDUgMCAwXQ0KL0Zp cnN0Q2hhciA1OA0KL0xhc3RDaGFyIDExNw0KL0VuY29kaW5nIDQ2IDAgUg0KL0NoYXJQcm9jcyA0 NyAwIFINCi9XaWR0aHMgWzMwIDAgMCAwIDAgMCAwIDAgMCAwIDYzIDAgNDggMCAwIDAgDQowIDAg NDggMCAwIDAgMCAwIDYwIDAgMCA2MSAwIDAgMCAwIA0KMCAwIDAgMCAwIDAgMCA1MCAwIDAgMCA0 OSAwIDAgNTMgMjUgDQowIDAgMjUgMCAwIDAgMCAwIDM2IDQzIDM0IDUzIF0NCj4+DQplbmRvYmoN CjQ2IDAgb2JqDQo8PA0KL1R5cGUgL0VuY29kaW5nDQovRGlmZmVyZW5jZXMgWzU4L0czQSA2OC9H NDQgNzAvRzQ2IDc2L0c0QyA4Mi9HNTIgODUvRzU1IDk3L0c2MSAxMDEvRzY1IDEwNC9HNjggL0c2 OSANCjEwOC9HNkMgMTE0L0c3MiAvRzczIC9HNzQgL0c3NSBdDQo+Pg0KZW5kb2JqDQo0NyAwIG9i ag0KPDwNCi9HM0EgNDggMCBSDQovRzQ0IDQ5IDAgUg0KL0c0NiA1MCAwIFINCi9HNEMgNTEgMCBS DQovRzUyIDUyIDAgUg0KL0c1NSA1MyAwIFINCi9HNjEgNTQgMCBSDQovRzY1IDU1IDAgUg0KL0c2 OCA1NiAwIFINCi9HNjkgNTcgMCBSDQovRzZDIDU4IDAgUg0KL0c3MiA1OSAwIFINCi9HNzMgNjAg MCBSDQovRzc0IDYxIDAgUg0KL0c3NSA2MiAwIFINCj4+DQplbmRvYmoNCjQ4IDAgb2JqDQo8PA0K L0xlbmd0aCA5NQ0KL0ZpbHRlciAvRmxhdGVEZWNvZGUNCj4+DQpzdHJlYW0NCkiJMjZQMFCwAGIj IwUTM4UUQ16uQl4uQxMFkDhQACSVnMvL5eTJy6UfrmBoAqQ8gBJAyinAWQGoXN/TV6GkqDSVl8vT RYGBGT/8jwcQ0svL5Qp0RCAvF0CAAQAckCwVDQplbmRzdHJlYW0NCmVuZG9iag0KNDkgMCBvYmoN Cjw8DQovTGVuZ3RoIDIwMA0KL0ZpbHRlciAvRmxhdGVEZWNvZGUNCj4+DQpzdHJlYW0NCkiJrNEx DoIwFAbgRxiaNGl6BHoDNAIrCWoig4lOHkAdHTQ649E4ikdgZCDiK39JSnQ0oflIS0vf/7KFmZnM juE5zZW8KpkmPIM55nhRsiiVjA8mTZgNLzDFbmn487jcmvvtcVayXBki0n3fM5QDAQJAFciBBgKE IADU81sNWt7IdLwRJw08KbLU4EXaoxkRlvYXHYV/5+ePmhH9fU93eVcKCnujWlf0EIGXSzAJy0UX TWKt/MiF3w7bHCXX3My9kh8BBgBglZ4yDQplbmRzdHJlYW0NCmVuZG9iag0KNTAgMCBvYmoNCjw8 DQovTGVuZ3RoIDEwMw0KL0ZpbHRlciAvRmxhdGVEZWNvZGUNCj4+DQpzdHJlYW0NCkiJMrFQMFAw A2ITMwUzA4UUQ16uQl4uEwMFEDSDSCXn8nI5efJy6YcrmBgAKQ+gBJByCnBWACrX9/RVKCkqTeXl 8nRRYCATMP7//59cAgiYySAosZIqBC+XKzBQA3m5AAIMAK4NgaMNCmVuZHN0cmVhbQ0KZW5kb2Jq DQo1MSAwIG9iag0KPDwNCi9MZW5ndGggOTgNCi9GaWx0ZXIgL0ZsYXRlRGVjb2RlDQo+Pg0Kc3Ry ZWFtDQpIiTKxUDBQMANiE3MFMwOFFENerkJeLhNDoIgBSAAklZzLy+XkyculH65gApTX9wBKACmn AGcFENfTV6GkqDSVl8vTRYGB8T8QjJIESBCop4Tk5XIFRkggLxdAgAEAVr/Ysw0KZW5kc3RyZWFt DQplbmRvYmoNCjUyIDAgb2JqDQo8PA0KL0xlbmd0aCAyMTkNCi9GaWx0ZXIgL0ZsYXRlRGVjb2Rl DQo+Pg0Kc3RyZWFtDQpIiZTRsQ6CMBAG4DYMTZo0fQTuDagmsJKgJjKY6OQDqKODRmd9NB+FR2Bk INQ7rhg6Smg+Usp/d6Fw4KCgtYTCwXlh9M3onHYcbdDD6Wp0VRudHSEvkC2+QKr9CvB4Vu/gcX9e jK7XIPDy3hOWkYwIlEzK2AjFJD+k/zAtLrz7iOFfeg4LdExDZaV/T9Vt1GBo9zWfIUykojFttJkg sh9PIvSdHBg/hlG9kkl5TMu9WJ5WzRrspuYFjzJCMUxJYAyBMUQzoYhWJATGEBhj9AZ/5sHorwAD ADeZoLANCmVuZHN0cmVhbQ0KZW5kb2JqDQo1MyAwIG9iag0KPDwNCi9MZW5ndGggMTc1DQovRmls dGVyIC9GbGF0ZURlY29kZQ0KPj4NCnN0cmVhbQ0KSIns0TEOwjAMBVBXHSpZsjhCfAHUZkjWSgUk OiDBxAGAkYEK5vZoPUqP0LEDwtjAwMgBiBQ/KT+xh0TPBQeeew6RY8FHT3ghDHZccPTv7HAmrGrC fM9BL+RrTZRqu2Cz3vC1uZ0I6yVDIjKC+/MTIDKA616UHbTSf1GK7h6cALQ9pJMygC35MFpNZDJS uRuZPIyZiOFEO+kzG2YjLcwUbaCFcKV/uiN8CjAAE5/GBw0KZW5kc3RyZWFtDQplbmRvYmoNCjU0 IDAgb2JqDQo8PA0KL0xlbmd0aCAyMTENCi9GaWx0ZXIgL0ZsYXRlRGVjb2RlDQo+Pg0Kc3RyZWFt DQpIiXzQvQoCMQwH8BwOQqG4ujUvIKdexdsO/ABvEHTyAdTRQVFwq4/WR7lH0O0GaU0iJ+Lg8uuQ NPmTUR/7OMTeAO0I7Rh3A62OWtkMuWDzd2170GpSapVu0Gb0LKhCz2Q1RepPyyWeT5e9VuUMYw2d GAMAuHgnjdgWW2Iiwlv3ZXFvB9ZFD+YRqcHExvrXwKODLKhEnmCCWIsy01Sib6S/NyhEnkNh2NZf OTBbkeCA/8JH/2XV7O1KhhzME+DK2RLO7OkwUas5HXKt1UuAAQAfYHI3DQplbmRzdHJlYW0NCmVu ZG9iag0KNTUgMCBvYmoNCjw8DQovTGVuZ3RoIDIxNQ0KL0ZpbHRlciAvRmxhdGVEZWNvZGUNCj4+ DQpzdHJlYW0NCkiJnJA9CgIxEIVnsVgIhBzBuYD4Q0StFlYFtxC08gBqaaFovTlabuAV9ggpt1gc Z7Iqgp0hfDPMmyRvYmc4wBH2hmgnsg9Drc5a2TGXB2inrbY/aZUXWvV3aMccVqxwyDdz5P5+scbr 5XbUqlggke8QUQNQEgUAwwWAlMgBJETAS8Q3y1qYBTAeskqSbgVUQ9dLg/HJiw8wrvNh2lKO/kHx R990yQ+BcfcygxijxlQ8SWAmBCbIPab+YpzFUEsXWUWKXLLX+FDgVKslf+RWq6cAAwCtG3o3DQpl bmRzdHJlYW0NCmVuZG9iag0KNTYgMCBvYmoNCjw8DQovTGVuZ3RoIDE0NA0KL0ZpbHRlciAvRmxh dGVEZWNvZGUNCj4+DQpzdHJlYW0NCkiJMjVWMFAwBWITCwUzY4UUQ16uQl4uE5CoAUgAJJWcy8vl 5MnLpR+uYGIMpDyAEkDKKcBZAahc39NXoaSoNJWXy9NFgYH5PxDQlGSoB5I/GPiB5AMGdiB5ACTI zMDA+J+BiYGB4T8DCNQjkfbYSPsGBnmg4gdAkvn/Bwzyx1AjeblcgVEUyMsFEGAAc4Sj+w0KZW5k c3RyZWFtDQplbmRvYmoNCjU3IDAgb2JqDQo8PA0KL0xlbmd0aCA5NQ0KL0ZpbHRlciAvRmxhdGVE ZWNvZGUNCj4+DQpzdHJlYW0NCkiJMjJVMFAAYUNLBTNjhRRDXq5CXi5DE6CIAUgAJJWcy8vl5MnL pR+uYGgCpDyAEkDKKcBZAahc39NXoaSoNJWXy9NFgYEZG/yPBLCroA7k5XIFOjOQlwsgwAAjDhxx DQplbmRzdHJlYW0NCmVuZG9iag0KNTggMCBvYmoNCjw8DQovTGVuZ3RoIDg5DQovRmlsdGVyIC9G bGF0ZURlY29kZQ0KPj4NCnN0cmVhbQ0KSIkyMlUwUABhQ0sFM2OFFENerkJeLkMToIgBSAAklZzL y+XkyculH65gaAKkPIASQMopwFkBqFzf01ehpKg0lZfL00WBgXkgIS+XK9CZgbxcAAEGACVTEI8N CmVuZHN0cmVhbQ0KZW5kb2JqDQo1OSAwIG9iag0KPDwNCi9MZW5ndGggMTE5DQovRmlsdGVyIC9G bGF0ZURlY29kZQ0KPj4NCnN0cmVhbQ0KSIkyNlMwUDAFYmMzBRMzhRRDXq5CXi5jQ6CIAUgAJJWc y8vl5MnLpR+uYAyU1/cASgAppwBnBRDX01ehpKg0lZfL00WBgfk/IwPzHyD+AMQHgLiBkYGJgZGB ARfm/8nA8P8/UN+AYl4uV6AHA3m5AAIMACraV0INCmVuZHN0cmVhbQ0KZW5kb2JqDQo2MCAwIG9i ag0KPDwNCi9MZW5ndGggMjEzDQovRmlsdGVyIC9GbGF0ZURlY29kZQ0KPj4NCnN0cmVhbQ0KSIk8 0D0OgkAQhuHZUJBsstkjMBcw/kCiVCSoiRQmWnkAtbTQaA1Ho/MadLaWFoRxPog2z5Dd5V1CEvOE Yx5NOZlxMufT1Nmrs3GqyxNOFsPe8eJsXjg7PnCc6tjojo58t2Q9Py62fL89zs4WK5aOvEhDJFIR RR0RhS14g+ZPDaqBrFGkDcmI9DzBCw0hKoEHQ9MDA6hEJULP99HP77ZAehocbIE+Ki2ZTD/QRFoz IQgAlR0F5D8KXgMh8CACGSgBmgGa2qg16exaf8ze2a8AAwAAAVtRDQplbmRzdHJlYW0NCmVuZG9i ag0KNjEgMCBvYmoNCjw8DQovTGVuZ3RoIDEzNg0KL0ZpbHRlciAvRmxhdGVEZWNvZGUNCj4+DQpz dHJlYW0NCkiJMjZRMFAwVNA1VDA2UTC1VEgx5OUq5OUyNgYKGyiYQeWSc3m5nDx5ufTDFYyNgZQH UAZIOQU4KwDV63v6KpQUlabycnm6KPxgkP//nxKCAQjqSSIotpIcgh9OsIMIxj/1f0BuQRD/4MR/ MNEAIg6AiA8g4j9QHy+XKzBQA3m5AAIMADTsoiANCmVuZHN0cmVhbQ0KZW5kb2JqDQo2MiAwIG9i ag0KPDwNCi9MZW5ndGggMTUwDQovRmlsdGVyIC9GbGF0ZURlY29kZQ0KPj4NCnN0cmVhbQ0KSIky NVYwUDBV0DVUMLFQMDFTSDHk5Srk5TIBCRsomJhD5JJzebmcPHm59MMVTIyBlAdQBkg5BTgrANXr e/oqlBSVpvJyebooMDD//8EgP8RIRgyS4f8DEGnPwCDfwMCAlTyARD5gYOBgkP/AwCDBIP+DgaGC Qf4PAwPQnP8MzCDygPz///95uVyBQRjIywUQYACBLGjHDQplbmRzdHJlYW0NCmVuZG9iag0KNiAw IG9iag0KPDwNCi9UeXBlIC9Gb250DQovU3VidHlwZSAvVHlwZTENCi9OYW1lIC9GMg0KL0ZpcnN0 Q2hhciAzMg0KL0xhc3RDaGFyIDEyMQ0KL1dpZHRocyBbMjkyIDAgMCAwIDAgMCAwIDI3NCAwIDAg MCAwIDAgNDMwIDAgMCANCjAgMCAwIDAgMCAwIDAgMCAwIDYzNCAzNjIgMCAwIDAgMCAwIA0KMCA2 ODIgMCA2NjUgNzU0IDYxMyA1NzkgMCAwIDQ4MSAwIDAgNTcwIDg5MCAwIDc2NyANCjY1NSAwIDcy MyA2MzEgNjEwIDAgMCAwIDAgMCAwIDAgMCAwIDAgMCANCjAgNTk2IDYyOSA1MjUgMCA1OTEgMzgx IDAgNjM4IDMwMSAwIDAgMCA5NTAgNjM4IDYxNSANCjYyNyAwIDQzMiA1MTMgNDE0IDYzOCAwIDAg MCA1NzMgXQ0KL0VuY29kaW5nIDYzIDAgUg0KL0Jhc2VGb250IC9DR0xNRUsrTVNUVDMxYzM3Nw0K L0ZvbnREZXNjcmlwdG9yIDE5IDAgUg0KPj4NCmVuZG9iag0KNyAwIG9iag0KPDwNCi9UeXBlIC9G b250DQovU3VidHlwZSAvVHlwZTENCi9OYW1lIC9GNA0KL0VuY29kaW5nIDY0IDAgUg0KL0Jhc2VG b250IC9UaW1lcy1Sb21hbg0KPj4NCmVuZG9iag0KOCAwIG9iag0KPDwNCi9UeXBlIC9Gb250DQov U3VidHlwZSAvVHlwZTENCi9OYW1lIC9GNg0KL0VuY29kaW5nIDY0IDAgUg0KL0Jhc2VGb250IC9I ZWx2ZXRpY2ENCj4+DQplbmRvYmoNCjkgMCBvYmoNCjw8DQovVHlwZSAvRm9udA0KL1N1YnR5cGUg L1R5cGUxDQovTmFtZSAvRjgNCi9FbmNvZGluZyA2NCAwIFINCi9CYXNlRm9udCAvSGVsdmV0aWNh LUJvbGQNCj4+DQplbmRvYmoNCjEwIDAgb2JqDQo8PA0KL1R5cGUgL0ZvbnQNCi9TdWJ0eXBlIC9U eXBlMQ0KL05hbWUgL0YxMA0KL0VuY29kaW5nIDY0IDAgUg0KL0Jhc2VGb250IC9UaW1lcy1Cb2xk DQo+Pg0KZW5kb2JqDQoxMSAwIG9iag0KPDwNCi9UeXBlIC9Gb250DQovU3VidHlwZSAvVHlwZTEN Ci9OYW1lIC9GMTMNCi9GaXJzdENoYXIgMA0KL0xhc3RDaGFyIDI1NQ0KL1dpZHRocyBbNDAwIDQw MCA1MDAgNDgwIDQ2MCA1MDAgMzIwIDUwMCAzNDAgMzYwIDQ0MCAzMjAgNTAwIDM2MCA0NjAgNDYw IA0KNDYwIDQ2MCA0NjAgNDYwIDQ2MCA0NjAgNDYwIDQ2MCA0NjAgNDYwIDQ2MCA0NjAgNDYwIDQ2 MCA0NjAgNDYwIA0KMzQwIDM2MCA0MjAgNjYwIDY2MCA5NDAgODAwIDI0MCAzMjAgMzIwIDQ2MCA2 MDAgMzQwIDM2MCAzNDAgNjAwIA0KNjYwIDY2MCA2NjAgNjYwIDY2MCA2NjAgNjYwIDY2MCA2NjAg NjYwIDM0MCAzNDAgNjAwIDYwMCA2MDAgNjYwIA0KODIwIDcyMCA3MjAgNzQwIDc4MCA3MjAgNjgw IDc4MCA4MjAgNDAwIDY0MCA4MDAgNjQwIDk0MCA3NDAgODAwIA0KNjYwIDgwMCA3ODAgNjYwIDcw MCA3NDAgNzIwIDk0MCA3ODAgNzAwIDY0MCAzMDAgNjAwIDMwMCA2MDAgNTAwIA0KNDAwIDU4MCA2 MDAgNTgwIDY0MCA1ODAgMzgwIDU4MCA2ODAgMzYwIDM0MCA2NjAgMzQwIDEwMDAgNjgwIDYyMCAN CjY0MCA2MjAgNDYwIDUyMCA0NjAgNjYwIDYwMCA4MDAgNjAwIDYyMCA1NjAgMzIwIDYwMCAzMjAg NjAwIDQ2MCANCjQ2MCA0NjAgMzIwIDY2MCA1NDAgMTAwMCA0NDAgMzgwIDUwMCAxMzYwIDY2MCAy MjAgMTIyMCA0NjAgNDYwIDQ2MCANCjQ2MCAzMjAgMzIwIDU0MCA1NDAgNDYwIDUwMCAxMDAwIDQ4 MCA5ODAgNTIwIDIyMCA5NDAgNDYwIDQ2MCA3MDAgDQozNDAgMzYwIDY2MCA2NjAgNjYwIDY2MCA2 MDAgNjAwIDUwMCA3NDAgNDAwIDQwMCA2MDAgMzYwIDc0MCA0NjAgDQo0MDAgNjAwIDM5NiAzOTYg NDAwIDY2MCA4MDAgMzQwIDM2MCAzOTYgNDAwIDQwMCA5OTAgOTkwIDk5MCA2NjAgDQo3MjAgNzIw IDcyMCA3MjAgNzIwIDcyMCAxMTQwIDc0MCA3MjAgNzIwIDcyMCA3MjAgNDAwIDQwMCA0MDAgNDAw IA0KNzgwIDc0MCA4MDAgODAwIDgwMCA4MDAgODAwIDYwMCA4MDAgNzQwIDc0MCA3NDAgNzQwIDcw MCA2NjAgNjYwIA0KNTgwIDU4MCA1ODAgNTgwIDU4MCA1ODAgODgwIDU4MCA1ODAgNTgwIDU4MCA1 ODAgMzYwIDM2MCAzNjAgMzYwIA0KNjIwIDY4MCA2MjAgNjIwIDYyMCA2MjAgNjIwIDYwMCA2MjAg NjYwIDY2MCA2NjAgNjYwIDYyMCA2NDAgNjIwIA0KXQ0KL0VuY29kaW5nIDY0IDAgUg0KL0Jhc2VG b250IC9Cb29rbWFuLURlbWkNCi9Gb250RGVzY3JpcHRvciAyMSAwIFINCj4+DQplbmRvYmoNCjYz IDAgb2JqDQo8PA0KL1R5cGUgL0VuY29kaW5nDQovRGlmZmVyZW5jZXMgWyAwL0cwMCA5L0cwOSAx MC9HMEEgMTMvRzBEIDEyNy9HN0YgMTI4L0c4MA0KXQ0KPj4NCmVuZG9iag0KNjQgMCBvYmoNCjw8 DQovVHlwZSAvRW5jb2RpbmcNCi9EaWZmZXJlbmNlcyBbIDAvZ3JhdmUvYWN1dGUvY2lyY3VtZmxl eC90aWxkZS9tYWNyb24vYnJldmUvZG90YWNjZW50L2RpZXJlc2lzDQovcmluZy9jZWRpbGxhL2h1 bmdhcnVtbGF1dC9vZ29uZWsvY2Fyb24vZG90bGVzc2kvYnVsbGV0L2J1bGxldA0KL2J1bGxldC9i dWxsZXQvYnVsbGV0L2J1bGxldC9idWxsZXQvYnVsbGV0L2J1bGxldC9idWxsZXQNCi9idWxsZXQv YnVsbGV0L2J1bGxldC9idWxsZXQvYnVsbGV0L2J1bGxldC9idWxsZXQvYnVsbGV0DQogMzkvcXVv dGVzaW5nbGUgOTYvZ3JhdmUgMTI3L2J1bGxldC9idWxsZXQvYnVsbGV0L3F1b3Rlc2luZ2xiYXNl L2Zsb3Jpbi9xdW90ZWRibGJhc2UNCi9lbGxpcHNpcy9kYWdnZXIvZGFnZ2VyZGJsL2NpcmN1bWZs ZXgvcGVydGhvdXNhbmQvU2Nhcm9uL2d1aWxzaW5nbGxlZnQvT0UNCi9idWxsZXQvYnVsbGV0L2J1 bGxldC9idWxsZXQvcXVvdGVsZWZ0L3F1b3RlcmlnaHQvcXVvdGVkYmxsZWZ0L3F1b3RlZGJscmln aHQNCi9idWxsZXQvZW5kYXNoL2VtZGFzaC90aWxkZS90cmFkZW1hcmsvc2Nhcm9uL2d1aWxzaW5n bHJpZ2h0L29lDQovYnVsbGV0L2J1bGxldC9ZZGllcmVzaXMvc3BhY2UgMTY0L2N1cnJlbmN5IDE2 Ni9icm9rZW5iYXIgMTY4L2RpZXJlc2lzL2NvcHlyaWdodA0KL29yZGZlbWluaW5lIDE3Mi9sb2dp Y2Fsbm90L2h5cGhlbi9yZWdpc3RlcmVkL21hY3Jvbi9kZWdyZWUvcGx1c21pbnVzL3R3b3N1cGVy aW9yDQovdGhyZWVzdXBlcmlvci9hY3V0ZS9tdSAxODMvcGVyaW9kY2VudGVyZWQvY2VkaWxsYS9v bmVzdXBlcmlvci9vcmRtYXNjdWxpbmUgMTg4L29uZXF1YXJ0ZXINCi9vbmVoYWxmL3RocmVlcXVh cnRlcnMgMTkyL0FncmF2ZS9BYWN1dGUvQWNpcmN1bWZsZXgvQXRpbGRlL0FkaWVyZXNpcy9Bcmlu Zw0KL0FFL0NjZWRpbGxhL0VncmF2ZS9FYWN1dGUvRWNpcmN1bWZsZXgvRWRpZXJlc2lzL0lncmF2 ZS9JYWN1dGUNCi9JY2lyY3VtZmxleC9JZGllcmVzaXMvRXRoL050aWxkZS9PZ3JhdmUvT2FjdXRl L09jaXJjdW1mbGV4L090aWxkZQ0KL09kaWVyZXNpcy9tdWx0aXBseS9Pc2xhc2gvVWdyYXZlL1Vh Y3V0ZS9VY2lyY3VtZmxleC9VZGllcmVzaXMvWWFjdXRlDQovVGhvcm4vZ2VybWFuZGJscy9hZ3Jh dmUvYWFjdXRlL2FjaXJjdW1mbGV4L2F0aWxkZS9hZGllcmVzaXMvYXJpbmcNCi9hZS9jY2VkaWxs YS9lZ3JhdmUvZWFjdXRlL2VjaXJjdW1mbGV4L2VkaWVyZXNpcy9pZ3JhdmUvaWFjdXRlDQovaWNp cmN1bWZsZXgvaWRpZXJlc2lzL2V0aC9udGlsZGUvb2dyYXZlL29hY3V0ZS9vY2lyY3VtZmxleC9v dGlsZGUNCi9vZGllcmVzaXMvZGl2aWRlL29zbGFzaC91Z3JhdmUvdWFjdXRlL3VjaXJjdW1mbGV4 L3VkaWVyZXNpcy95YWN1dGUNCi90aG9ybi95ZGllcmVzaXMNCl0NCj4+DQplbmRvYmoNCjMgMCBv YmoNCjw8DQovVHlwZSAvUGFnZQ0KL1BhcmVudCAxNiAwIFINCi9SZXNvdXJjZXMgNSAwIFINCi9D b250ZW50cyA0IDAgUg0KPj4NCmVuZG9iag0KMTYgMCBvYmoNCjw8DQovVHlwZSAvUGFnZXMNCi9L aWRzIFszIDAgUl0NCi9Db3VudCAxDQovTWVkaWFCb3ggWzAgMCA2MTIgNzkyXQ0KPj4NCmVuZG9i ag0KNjUgMCBvYmoNCjw8DQovVHlwZSAvQ2F0YWxvZw0KL1BhZ2VzIDE2IDAgUg0KPj4NCmVuZG9i ag0KNjYgMCBvYmoNCjw8DQovQ3JlYXRpb25EYXRlIChEOjE5OTkwMzA1MjAwMzQzKQ0KL1Byb2R1 Y2VyIChcMzc2XDM3N1wwMDBBXDAwMGNcMDAwclwwMDBvXDAwMGJcMDAwYVwwMDB0XDAwMCBcMDAw RFwwMDBpXDAwMHNcMDAwdFwwMDBpXDAwMGxcMDAwbFwwMDBlXDAwMHJcMDAwIFwwMDAzXDAwMC5c MDAwMFwwMDAxXDAwMCBcMDAwZlwwMDBvXDAwMHJcMDAwIFwwMDBXXDAwMGlcMDAwblwwMDBkXDAw MG9cMDAwd1wwMDBzKQ0KL0F1dGhvciAoTWFoYnVidXIgU3llZCkNCi9DcmVhdG9yIChIUFBTNDFB LkRSViBWZXJzaW9uIDQuMTApDQovVGl0bGUgKE1pY3Jvc29mdCBXb3JkIC0gcGFwZXJjYWxsMi5k b2MpDQo+Pg0KZW5kb2JqDQp4cmVmDQowIDY3DQowMDAwMDAwMDAwIDY1NTM1IGYNCjAwMDAwMDAw MTcgMDAwMDAgbg0KMDAwMDAxMTM3MSAwMDAwMCBuDQowMDAwMDMwNDkwIDAwMDAwIG4NCjAwMDAw MDYzOTAgMDAwMDAgbg0KMDAwMDAxMTA5NCAwMDAwMCBuDQowMDAwMDI2ODQ0IDAwMDAwIG4NCjAw MDAwMjcyODIgMDAwMDAgbg0KMDAwMDAyNzM5MCAwMDAwMCBuDQowMDAwMDI3NDk2IDAwMDAwIG4N CjAwMDAwMjc2MDcgMDAwMDAgbg0KMDAwMDAyNzcxNiAwMDAwMCBuDQowMDAwMDE3MTk0IDAwMDAw IG4NCjAwMDAwMjE5OTYgMDAwMDAgbg0KMDAwMDAyMjYwMyAwMDAwMCBuDQowMDAwMDEyNjI5IDAw MDAwIG4NCjAwMDAwMzA1NzkgMDAwMDAgbg0KMDAwMDAxMTQyMiAwMDAwMCBuDQowMDAwMDEyNDk2 IDAwMDAwIG4NCjAwMDAwMTI3MDkgMDAwMDAgbg0KMDAwMDAxMzA1OCAwMDAwMCBuDQowMDAwMDE2 OTM1IDAwMDAwIG4NCjAwMDAwMTcxNDIgMDAwMDAgbg0KMDAwMDAxNzUzNCAwMDAwMCBuDQowMDAw MDE3Njg4IDAwMDAwIG4NCjAwMDAwMTc5MjIgMDAwMDAgbg0KMDAwMDAxODIwMiAwMDAwMCBuDQow MDAwMDE4NDgxIDAwMDAwIG4NCjAwMDAwMTg2NTMgMDAwMDAgbg0KMDAwMDAxODkzNSAwMDAwMCBu DQowMDAwMDE5MjQ2IDAwMDAwIG4NCjAwMDAwMTk1MjUgMDAwMDAgbg0KMDAwMDAxOTcxNSAwMDAw MCBuDQowMDAwMDE5ODk0IDAwMDAwIG4NCjAwMDAwMjAwNzIgMDAwMDAgbg0KMDAwMDAyMDMzNyAw MDAwMCBuDQowMDAwMDIwNTk1IDAwMDAwIG4NCjAwMDAwMjA5MDYgMDAwMDAgbg0KMDAwMDAyMTIw MCAwMDAwMCBuDQowMDAwMDIxNTI4IDAwMDAwIG4NCjAwMDAwMjE3MDIgMDAwMDAgbg0KMDAwMDAy MTk0NCAwMDAwMCBuDQowMDAwMDIyMjI3IDAwMDAwIG4NCjAwMDAwMjIyOTUgMDAwMDAgbg0KMDAw MDAyMjMzNCAwMDAwMCBuDQowMDAwMDIyNTUxIDAwMDAwIG4NCjAwMDAwMjI5NzIgMDAwMDAgbg0K MDAwMDAyMzEzNSAwMDAwMCBuDQowMDAwMDIzMzU2IDAwMDAwIG4NCjAwMDAwMjM1MzIgMDAwMDAg bg0KMDAwMDAyMzgxNCAwMDAwMCBuDQowMDAwMDIzOTk5IDAwMDAwIG4NCjAwMDAwMjQxNzggMDAw MDAgbg0KMDAwMDAyNDQ3OSAwMDAwMCBuDQowMDAwMDI0NzM2IDAwMDAwIG4NCjAwMDAwMjUwMjkg MDAwMDAgbg0KMDAwMDAyNTMyNiAwMDAwMCBuDQowMDAwMDI1NTUyIDAwMDAwIG4NCjAwMDAwMjU3 MjggMDAwMDAgbg0KMDAwMDAyNTg5OCAwMDAwMCBuDQowMDAwMDI2MDk5IDAwMDAwIG4NCjAwMDAw MjYzOTQgMDAwMDAgbg0KMDAwMDAyNjYxMiAwMDAwMCBuDQowMDAwMDI4OTU0IDAwMDAwIG4NCjAw MDAwMjkwNTggMDAwMDAgbg0KMDAwMDAzMDY2OSAwMDAwMCBuDQowMDAwMDMwNzI2IDAwMDAwIG4N CnRyYWlsZXINCjw8DQovU2l6ZSA2Nw0KL1Jvb3QgNjUgMCBSDQovSW5mbyA2NiAwIFINCi9JRCBb PGI3YzVmM2VjODA1NGFhOWM4OWU4OTkxYWFhMmJkYTlkPjxiN2M1ZjNlYzgwNTRhYTljODllODk5 MWFhYTJiZGE5ZD5dDQo+Pg0Kc3RhcnR4cmVmDQozMTA4Mg0KJSVFT0YNCg== --=====================_920859514==_ Content-Type: text/plain; charset="us-ascii" ******************************** Dr. Mahbubur Rahman Syed Department of Electrical Engineering, EERoom 101 North Dakota State University Fargo, ND 58105, USA Email: msyed@badlands.nodak.edu Phone: (701) 231 7689 Fax: (701) 231 8677 ******************************** --=====================_920859514==_-- From muellert@ifn.et.tu-dresden.de Mon Mar 8 07:38:27 1999 From: muellert@ifn.et.tu-dresden.de (Torsten Mueller) Date: Mon, 8 Mar 1999 08:38:27 +0100 Subject: Users and Programmers Manual Message-ID: <199903080738.IAA02184@entcw7.et.tu-dresden.de> > >there has been a question about references how to program ns modules. > >I have seen a users and programmers manual on the web. > >It covers an extension to ns, but maybe it is also useful. > >(I havent checked that) > > Can you give the URL ? :) > I got a tutorial about ns .. but couldn't find a kind of "programmer > manuel" .. http://freebsd1.lums.edu.pk/~umair/NS/doc/index.html Torsten From Lloyd Wood Mon Mar 8 13:07:04 1999 From: Lloyd Wood (Lloyd Wood) Date: Mon, 8 Mar 1999 13:07:04 +0000 (GMT) Subject: Users and Programmers Manual In-Reply-To: <199903080738.IAA02184@entcw7.et.tu-dresden.de> Message-ID: On Mon, 8 Mar 1999, Torsten Mueller wrote: > > >there has been a question about references how to program ns modules. > > >I have seen a users and programmers manual on the web. > > >It covers an extension to ns, but maybe it is also useful. > > >(I havent checked that) > > > > Can you give the URL ? :) > > I got a tutorial about ns .. but couldn't find a kind of "programmer > > manuel" .. > http://freebsd1.lums.edu.pk/~umair/NS/doc/index.html That's an out-of-date and modified version of the ns version 1 manual to document a derived ATM node class that some students in Lahore who don't answer their mail hacked up as an undergraduate project. Since it's ns version 1, it's not even describing OTcl. (Still, if you're interested in adding ATM support it's an interesting starting point.) He'd do better with the actual real manual at: http://www-mash.cs.berkeley.edu/ns/ns-documentation.html L. PGP From Huang Hai Mon Mar 8 14:18:28 1999 From: Huang Hai (Huang Hai) Date: Mon, 8 Mar 1999 22:18:28 +0800 Subject: No subject Message-ID: <5929.990308@chpcc.edu.cn> subscribe ns-users From Imed.Ben_Hmida@sophia.inria.fr Mon Mar 8 15:00:25 1999 From: Imed.Ben_Hmida@sophia.inria.fr (Imed Ben Hmida) Date: Mon, 08 Mar 1999 16:00:25 +0100 Subject: installation failure Message-ID: <36E3E609.C6FB63CF@sophia.inria.fr> after downloading ns-allinone 2.1b4,Itried to run the script install but I had error msgs such as : ...cc:not found cannot run test program tcl8.0 configuration failed!exiting..... would you tell me where the problem could be? From syan@jupiter.nal.utoronto.ca Mon Mar 8 17:25:52 1999 From: syan@jupiter.nal.utoronto.ca (Shuqian Yan) Date: Mon, 8 Mar 1999 12:25:52 -0500 (EST) Subject: How to access the routing table information Message-ID: Hello, all Is that possible in ns2 to access the routing table information in order to know the cost or hop count from a particular node to some other destination node? I looked up the ns notes and documentation in chapter 15 on unicast routing, it seems that there is a metric()? prodecure defined under class rtObject, however rtobject is only meant for simulations that use dynamic routing. According to my previous message posted two days ago, the DV routing in ns2 seems not working right now. So is there any other way to find out the cost/metric from a node to a destination node? I really appreciate any of your input about this question. thank you, shuqian From Lloyd Wood Mon Mar 8 20:10:27 1999 From: Lloyd Wood (Lloyd Wood) Date: Mon, 8 Mar 1999 20:10:27 +0000 (GMT) Subject: Link Cost In-Reply-To: Message-ID: On Mon, 8 Mar 1999, Shuqian Yan wrote: > Date: Mon, 8 Mar 1999 13:50:32 -0500 (EST) > From: Shuqian Yan > To: Lloyd Wood > > Hello, > To you question on " I haven't been able to change this successfully > dynamically. Anyone?" Huang confirmed he'd encountered the same thing. > it seems I can dynamically change the > default link cost (which is default to 1 hop for all directed edges) to > whatever value I like. changing the default overall cost isn't enough. you need to change the cost of a single link with the effect of changing that cost appearing in your simulations for this to be of any use. > I made the change in the ~ns/tcl/mcast/BST.tcl, > under its recv-graft procedure{}, I have enclose the modified file, and > you can try to run it with example script under > tcl/ex/newmcast/mcast5.tcl, see if it works for you too. [cc'd to the list for an expert opinion.] Well, looking at your modification: diff ns/ns/tcl/mcast/BST.tcl BST-4.tcl 223a224,228 > if { $node_ != $RP_($group) } { > set linkcost [[$ns_ link $node_ $RP_($group)] cost 3] > $self dbg "[[$ns_ link $node_ $RP_($group)] cost?]" > $self dbg "linkcost: $linkcost" > } $self dbg "oiflist: $oiflist_($group)" } etc. There's more to it than just being able to set the link cost to an arbitrary value, I think (since that doesn't affect the simulation results of mcast5.tcl at all, and you haven't told the nodes the link costs have changed, right?). That's not really where you would want to change the link cost; you'd want to change it in your simulation script between two nodes, and see the results of that change reflected accurately in the traffic (or multicast trees) running across those nodes at the time as the routing protocols (which we're also having trouble with, but that's another story, but intf-changed to update the nodes requires detailed dynamic routing...) propagate the information throughout the network. The cost's associated with the simplex link, not with the traffic running across said link, so setting such changes per-protocol is the wrong answer, I think, and doesn't prove anything. (Someone correct me if I'm wrong here.) And whether changing cost doesn't invalidate the simulation (if it actually does anything at all) is a question I'm not qualified to answer; I'm still at the 'changing cost doesn't do anything' stage. Cheers, L. who thinks it would be nice if nam showed link cost both ways on link popups too; that's the sort of thing he can cope with. > shuqian > > On Wed, 24 Feb 1999, Lloyd Wood wrote: > > > On Sat, 20 Feb 1999, Wee Ching Wi wrote: > > > > > Does anyone know how to change the link cost for any pair of nodes. I > know > > > there is an instproc cost{ } but not too sure how to use it. > > > > [$ns link $n($node2) $n($node1)] cost $thislinkcost > > > > AFAIK it only works at startup; I haven't been able to change this > > successfully dynamically. Anyone? > > > > In November 1998 Kannan wrote: > > | You can try invoking "$n0 intf-changed; $n3 intf-changed" after > > | changing the link cost. However, since I don't recall ever > > | explicitly taking link cost changes into account, it may or may not > > | work. > > [..] > > | Again, setting costs as a function of the link delay definitely > > | works (barring unforeseen bugs) when the costs are configured > > | at startup; whether it works when the costs are changed during > > | simulation execution is a question. > > > > L. PGP From jad.antoinehaddad@usj.edu.lb Tue Mar 9 11:40:38 1999 From: jad.antoinehaddad@usj.edu.lb (bero) Date: Tue, 09 Mar 1999 13:40:38 +0200 Subject: hi Message-ID: <36E508B6.76DB4DE8@usj.edu.lb> hello we are students from ESIB college we would like you to send us the ns software so we can test it send it on this e-mail: fadi.achkar(el)@fi.usj.edu.lb thank you for answering us From Lloyd Wood Tue Mar 9 12:16:40 1999 From: Lloyd Wood (Lloyd Wood) Date: Tue, 9 Mar 1999 12:16:40 +0000 (GMT) Subject: ns TCP/IP over ATM simulator In-Reply-To: Message-ID: On Tue, 9 Mar 1999, Tijani CHAHED wrote: > Hello, > > I came across your message about the TCP/IP over ATM simulator. I tried to > use it but it ha some problems with the ATM extensions, precisely. I need > to discuss about these issues. > > Did you use it or know about anybody who did ? Well, it's a modified version of ns version 1.3, which I haven't used in ages; haven't tried it, and the best thing I can think of is look at the approach taken, see if it's sensible, then write your own code for ns version 2.1bwhatever providing the same functionality. Syed Ijlal Ali Shah (syeds@lums.edu.pk) http://www.lums.edu.pk/LUMS/faculty.html#ijlal appears to be the responsible faculty member; you could try asking him. Anyone else? cheers, L. > Thanx a lot for your help and Best, > > tijani chahed. > PhD student > INT - France PGP From eroesch@iutsud.u-strasbg.fr Tue Mar 9 12:44:03 1999 From: eroesch@iutsud.u-strasbg.fr (eroesch@iutsud.u-strasbg.fr) Date: Tue, 09 Mar 1999 13:44:03 +0100 Subject: Users and Programmers Manual In-Reply-To: References: <199903080738.IAA02184@entcw7.et.tu-dresden.de> Message-ID: <3.0.1.32.19990309134403.009366d0@iutsud.u-strasbg.fr> >http://www-mash.cs.berkeley.edu/ns/ns-documentation.html Thanks a lot to all of you .. I finally solved my problems and developped a new protocol/agent .. ! :) I am writing a paper for the school about NS and the development of new objects .. I can send it on demand (an English version ?).. ----- Etienne From anurag@cs.ust.hk Tue Mar 9 14:29:52 1999 From: anurag@cs.ust.hk (Anurag) Date: Tue, 9 Mar 1999 22:29:52 +0800 (HKT) Subject: error in testing RED Message-ID: Hi I tried running test-suite-red.tcl for red1, but it does not work gives errors given below. >ns test-suite-red.tcl red1 0/cwnd=1.0000/ssthresh=15/ack=-1 5/cwnd=40.7922/ssthresh=15/ack=732 ns: _o4 cleanup file6 red1: syntax error in file ../../bin/raw2xg at line 43, next 2 tokens "my(" syntax error in file ../../bin/raw2xg at line 59, next 2 tokens "translate_point(" syntax error in file ../../bin/raw2xg at line 94, next 2 tokens "translate_point(" Execution of ../../bin/raw2xg aborted due to compilation errors. Can't locate 5.001000000000000334 in @INC at ../../bin/getrc line 4. while executing "exec ../../bin/getrc -s 2 -d 3 all.tr | ../../bin/raw2xg -a -s 0.01 -m 90 -t $file > temp.rands" (procedure "_o4" line 4) (TestSuite finish line 4) invoked from within "$self finish $testname" (procedure "_o4" line 11) (TestSuite cleanup line 11) invoked from within "_o4 cleanup file6 red1" Please let me how I can fix these errors. thanks with Regards Anurag, From uvaizahm@nortelnetworks.com Tue Mar 9 14:52:27 1999 From: uvaizahm@nortelnetworks.com (Uvaiz Ahmed) Date: Tue, 9 Mar 1999 09:52:27 -0500 Subject: Users and Programmers Manual Message-ID: > I am writing a paper for the school about NS and the development of new > objects .. I can send it on demand (an English version ?).. > > ----- > Etienne > That would be really helpfull ( english version if you can ) Uvaiz From Lloyd Wood Tue Mar 9 15:25:01 1999 From: Lloyd Wood (Lloyd Wood) Date: Tue, 9 Mar 1999 15:25:01 +0000 (GMT) Subject: error in testing RED In-Reply-To: Message-ID: On Tue, 9 Mar 1999, Anurag wrote: > I tried running test-suite-red.tcl for red1, but it does not work gives > errors given below. > > >ns test-suite-red.tcl red1 > 0/cwnd=1.0000/ssthresh=15/ack=-1 > 5/cwnd=40.7922/ssthresh=15/ack=732 > ns: _o4 cleanup file6 red1: syntax error in file ../../bin/raw2xg at line 43, next 2 tokens "my(" my() is a perl token, and raw2xg is a perl script. With that and the not being able to locate 5.0001 I think you haven't got a suitably recent version of perl 5 installed, that it wasn't found during compilation, or that you have other perl problems. Cheers, L. > syntax error in file ../../bin/raw2xg at line 59, next 2 tokens "translate_point(" > syntax error in file ../../bin/raw2xg at line 94, next 2 tokens "translate_point(" > Execution of ../../bin/raw2xg aborted due to compilation errors. > Can't locate 5.001000000000000334 in @INC at ../../bin/getrc line 4. > while executing > "exec ../../bin/getrc -s 2 -d 3 all.tr | ../../bin/raw2xg -a -s 0.01 -m 90 -t $file > temp.rands" > (procedure "_o4" line 4) > (TestSuite finish line 4) > invoked from within > "$self finish $testname" > (procedure "_o4" line 11) > (TestSuite cleanup line 11) > invoked from within > "_o4 cleanup file6 red1" > > > Please let me how I can fix these errors. > > thanks > > with Regards > Anurag, PGP From Huang Hai Tue Mar 9 15:29:27 1999 From: Huang Hai (Huang Hai) Date: Tue, 9 Mar 1999 23:29:27 +0800 Subject: problem with ns snapshot Message-ID: <16978.990309@chpcc.edu.cn> Hi, I have downloaded ns snapshot dated Mar. 8th, but when I use SACK to do some simulation, it print out Agent::sendmsg(int, const AppData*, const char*) not implemented and aborted. IMO, sendmsg should do nothing for there is actually no user's data to send. I have modified sendmsg, it does nothing now. After that, my script can run smoothly with ns. I hope the problem can be fixed in the next snapshot. I also found that Agent::sendto will print out the same error message and abort, and the error message it prints out says also Agent::sendmsg(int, const AppData*, const char*) not implemented At least the error message should be "Agnet::sendto(.....) not implemented" Huang From leefion@nortelnetworks.com Tue Mar 9 17:00:40 1999 From: leefion@nortelnetworks.com (Fion Lee) Date: Tue, 09 Mar 1999 12:00:40 -0500 Subject: RED trace Message-ID: <36E553B8.69BD070B@nortelnetworks.com> I realize that several questions about trace has been answered in the past. However, it seems that I am still missing some points with regard to using trace. In red.cc, it says: /* * Routine called by TracedVar facility when variables change values. * Currently used to trace values of avg queue size, drop probability, * and the instantaneous queue size seen by arriving packets. * Note that the tracing of each var must be enabled in tcl to work. */ void REDQueue::trace(TracedVar* v) {........ My questions are: 1. Where is "TracedVar" defined? 2. How do I "enable the tracing" of the variables "ave", "prob" and "curq" in tcl? Thanks for your help in advance. Fion From danielf@isr.umd.edu Tue Mar 9 21:09:25 1999 From: danielf@isr.umd.edu (Daniel Friedman) Date: Tue, 9 Mar 1999 16:09:25 -0500 (EST) Subject: Can't multicast w/simplex links? Message-ID: My ns version is 2.1b4a. I'm trying to "broadcast" a message from one node to several others, using simplex links. I tried to take ~ns/tcl/ex/newmcast/mcast1.tcl and change the duplex-links to simplex-links. For example, I changed $ns duplex-link $n0 $n1 1.5Mb 10ms DropTail to $ns simplex-link $n0 $n1 1.5Mb 10ms DropTail and similarly elsewhere. (I also commented-out the duplex-link-op lines.) Why do I find no traffic is sent after making these changes? Thanks, --dan --------------------------------------------------------------------------- Daniel Friedman danielf@isr.umd.edu http://www.isr.umd.edu/~danielf From Lloyd Wood Tue Mar 9 21:29:49 1999 From: Lloyd Wood (Lloyd Wood) Date: Tue, 9 Mar 1999 21:29:49 +0000 (GMT) Subject: Can't multicast w/simplex links? In-Reply-To: Message-ID: On Tue, 9 Mar 1999, Daniel Friedman wrote: > My ns version is 2.1b4a. > > I'm trying to "broadcast" a message from one node to several others, > using simplex links. I tried to take ~ns/tcl/ex/newmcast/mcast1.tcl and > change the duplex-links to simplex-links. For example, I changed > $ns duplex-link $n0 $n1 1.5Mb 10ms DropTail > to > $ns simplex-link $n0 $n1 1.5Mb 10ms DropTail > and similarly elsewhere. (I also commented-out the duplex-link-op > lines.) > > Why do I find no traffic is sent after making these changes? because the join-group messages sent at specific times can never reach the source. You've just broken the only paths they had. If you're using simplex links, the multicast should work with asymmetrical topologies, but you still need bidirectional communication overall between nodes and sources for flooding/reverse-path forwarding or to allow join/leave messages to reach the source, depending on the multicast paradigm chosen. If you were using a DVMRP tree, you might get away with it, because flooding ought to work in this case and pruning messages never get received. But this script is using centralised multicast... cheers, L. and this is where I recommend Huitema's 'Routing in the Internet'. > Daniel Friedman danielf@isr.umd.edu http://www.isr.umd.edu/~danielf PGP From hussein@maxwell.ee.washington.edu Tue Mar 9 23:10:59 1999 From: hussein@maxwell.ee.washington.edu (AL-HUSSEIN ABOU-ZEID) Date: Tue, 09 Mar 1999 15:10:59 PST Subject: nam bug when using random loss modules Message-ID: <199903092310.PAA19174@maxwell.ee.washington.edu> I've noticed that when you use nam with a model containing a two-state time-based loss model, the animation works correctly up till the first random loss, and after that it does strange things. One of these is that it shows a buffer size that is greater than the maximum buffer size allowed on the link (I am assuming this is a nam bug and not an ns bug). Another problem is that, after the first random loss, it might not show any packets getting through the link, as if the link remained in the bad state for the rest of the simulation time. However, this proves not true when checking the trace file, which implied a bug in the nam and not the ns. I understand that the two-state and multi-state models are "under-developed" in the version I'm using (ns-v2.1b4a), so maybe someone would be interested in taking this problem into consideration in future ns releases. Best Regards, --Hussein. ------------------ Electrical Engineering Department University of Washington, Seattle. From haoboy@isi.edu Tue Mar 9 23:32:35 1999 From: haoboy@isi.edu (Haobo Yu) Date: Tue, 9 Mar 1999 15:32:35 -0800 (PST) Subject: nam bug when using random loss modules In-Reply-To: <199903092310.PAA19174@maxwell.ee.washington.edu> Message-ID: I think it should have been fixed in the current nam (and ns) snapshot. Previously Simulator::lossmodel and SimpleLink::errormodule does not generate any nam traces. You can manually add drop traces of error models, however, nam does not show that correctly because of abnormal the enqueue/drop order. There are two solutions. First, if you are using ns snapshot you can use Simulator::link-lossmodel to install the error model (which installs an error model after the queue in a simple link), which allow any nam to view the trace correctly. Second, if you still prefer installing an error model before the queue in a simple link, you can download the current nam snapshot, which contains a fix for that. - Haobo On Tue, 9 Mar 1999, AL-HUSSEIN ABOU-ZEID wrote: > > I've noticed that when you use nam with a model containing a two-state > time-based loss model, the animation works correctly up till the first > random loss, and after that it does strange things. One of these is that > it shows a buffer size that is greater than the maximum buffer size > allowed on the link (I am assuming this is a nam bug and not an ns bug). > Another problem is that, after the first random loss, it might not show > any packets getting through the link, as if the link remained in the bad > state for the rest of the simulation time. However, this proves not true > when checking the trace file, which implied a bug in the nam and not the > ns. > > I understand that the two-state and multi-state models are > "under-developed" in the version I'm using (ns-v2.1b4a), so maybe someone > would be interested in taking this problem into consideration in future ns > releases. > > Best Regards, > > --Hussein. > ------------------ > Electrical Engineering Department > University of Washington, Seattle. > From hussein@maxwell.ee.washington.edu Wed Mar 10 01:18:47 1999 From: hussein@maxwell.ee.washington.edu (AL-HUSSEIN ABOU-ZEID) Date: Tue, 09 Mar 1999 17:18:47 PST Subject: nam bug when using random loss modules In-Reply-To: ; from "Haobo Yu" at Mar 9, 99 3:32 pm Message-ID: <199903100118.RAA00741@maxwell.ee.washington.edu> Thanks for your reply. Could you please explain what is the "snapshot". I checked for it on the ns homepage, but I couldn't find a mention of a snapshot. I also have another problem. When I run make, there are no errors reported, but when I run make depend, I get : emulate/net-pcap.cc:60: pcap.h: No such file or directory emulate/arp.cc:50: net/ethernet.h: No such file or directory It is true. There are no files with such names! I would like to install the error model after the queue using lossmodel. Could you confirm that this Simulator::lossmodel would work for a duplex link? Thanks, -Hussein > > I think it should have been fixed in the current nam (and ns) snapshot. > Previously Simulator::lossmodel and SimpleLink::errormodule does not > generate any nam traces. You can manually add drop traces of error models, > however, nam does not show that correctly because of abnormal the > enqueue/drop order. > > There are two solutions. First, if you are using ns snapshot you can use > Simulator::link-lossmodel to install the error model (which installs > an error model after the queue in a simple link), which allow any nam to > view the trace correctly. Second, if you still prefer installing an error > model before the queue in a simple link, you can download the current nam > snapshot, which contains a fix for that. > > - Haobo > > On Tue, 9 Mar 1999, AL-HUSSEIN ABOU-ZEID wrote: > > > > > I've noticed that when you use nam with a model containing a two-state > > time-based loss model, the animation works correctly up till the first > > random loss, and after that it does strange things. One of these is that > > it shows a buffer size that is greater than the maximum buffer size > > allowed on the link (I am assuming this is a nam bug and not an ns bug). > > Another problem is that, after the first random loss, it might not show > > any packets getting through the link, as if the link remained in the bad > > state for the rest of the simulation time. However, this proves not true > > when checking the trace file, which implied a bug in the nam and not the > > ns. > > > > I understand that the two-state and multi-state models are > > "under-developed" in the version I'm using (ns-v2.1b4a), so maybe someone > > would be interested in taking this problem into consideration in future ns > > releases. > > > > Best Regards, > > > > --Hussein. > > ------------------ > > Electrical Engineering Department > > University of Washington, Seattle. > > > > From Lloyd Wood Wed Mar 10 01:27:59 1999 From: Lloyd Wood (Lloyd Wood) Date: Wed, 10 Mar 1999 01:27:59 +0000 (GMT) Subject: nam bug when using random loss modules In-Reply-To: <199903100118.RAA00741@maxwell.ee.washington.edu> Message-ID: On Tue, 9 Mar 1999, AL-HUSSEIN ABOU-ZEID wrote: > Could you please explain what is the "snapshot". I checked for it on the > ns homepage, but I couldn't find a mention of a snapshot. http://www-mash.CS.Berkeley.EDU/ns/ns-build.html search for 'daily snapshot' - ns, tclcl, nam. > I also have another problem. When I run make, there are no errors > reported, but when I run make depend, I get : > emulate/net-pcap.cc:60: pcap.h: No such file or directory > emulate/arp.cc:50: net/ethernet.h: No such file or directory > It is true. There are no files with such names! I've noticed this too. cheers, L. PGP From haoboy@isi.edu Wed Mar 10 01:29:24 1999 From: haoboy@isi.edu (Haobo Yu) Date: Tue, 9 Mar 1999 17:29:24 -0800 (PST) Subject: nam bug when using random loss modules In-Reply-To: <199903100118.RAA00741@maxwell.ee.washington.edu> Message-ID: > Could you please explain what is the "snapshot". I checked for it on the > ns homepage, but I couldn't find a mention of a snapshot. They are daily extracted from the cvs repository of ns and nam. Available at http://mash.cs.berkeley.edu/dist/vint/, look for *-current.tar.gz. > I would like to install the error model after the queue using lossmodel. > Could you confirm that this Simulator::lossmodel would work for a duplex > link? Yes it works. You can find more information in the Error models section in the most current nsdoc (http://mash.cs.berkeley.edu/ns/ns-documentation.html). - Haobo > Thanks, > > -Hussein > > > > > I think it should have been fixed in the current nam (and ns) snapshot. > > Previously Simulator::lossmodel and SimpleLink::errormodule does not > > generate any nam traces. You can manually add drop traces of error models, > > however, nam does not show that correctly because of abnormal the > > enqueue/drop order. > > > > There are two solutions. First, if you are using ns snapshot you can use > > Simulator::link-lossmodel to install the error model (which installs > > an error model after the queue in a simple link), which allow any nam to > > view the trace correctly. Second, if you still prefer installing an error > > model before the queue in a simple link, you can download the current nam > > snapshot, which contains a fix for that. > > > > - Haobo > > > > On Tue, 9 Mar 1999, AL-HUSSEIN ABOU-ZEID wrote: > > > > > > > > I've noticed that when you use nam with a model containing a two-state > > > time-based loss model, the animation works correctly up till the first > > > random loss, and after that it does strange things. One of these is that > > > it shows a buffer size that is greater than the maximum buffer size > > > allowed on the link (I am assuming this is a nam bug and not an ns bug). > > > Another problem is that, after the first random loss, it might not show > > > any packets getting through the link, as if the link remained in the bad > > > state for the rest of the simulation time. However, this proves not true > > > when checking the trace file, which implied a bug in the nam and not the > > > ns. > > > > > > I understand that the two-state and multi-state models are > > > "under-developed" in the version I'm using (ns-v2.1b4a), so maybe someone > > > would be interested in taking this problem into consideration in future ns > > > releases. > > > > > > Best Regards, > > > > > > --Hussein. > > > ------------------ > > > Electrical Engineering Department > > > University of Washington, Seattle. > > > > > > > > > From anurag@cs.ust.hk Wed Mar 10 03:53:22 1999 From: anurag@cs.ust.hk (Anurag) Date: Wed, 10 Mar 1999 11:53:22 +0800 (HKT) Subject: ns not working after recompiling, tclsh8.0 not found Message-ID: Hi I recompiled ns after some modifications (added a new type of queue) but it has stoped working after that. I did 'make depend' it gave mesage emulate/net-pcap.cc:60: pcap.h: No such file or directory emulate/arp.cc:50: net/ethernet.h: No such file or directory I assume these files are not needed. after that i did 'make'. It seems to compile. After that even if i run a simple test, ns does not work, it is not able to get the new instance of the simulator. the error message is > ns test_red.tcl invalid command name "Simulator" while executing "Simulator create _o1 " invoked from within "catch "$className create $o $args" msg" (procedure "new" line 3) invoked from within "new Simulator" (file "test_red.tcl" line 2) First time I recompiled, 'make' gave some error message tclsh8.0 not found .... but on second recompile there was no such error message. I do not understand what went worng. Please help. thanks with regards Anurag From singhala@leland.Stanford.EDU Wed Mar 10 05:48:08 1999 From: singhala@leland.Stanford.EDU (Anupam Singhal) Date: Tue, 9 Mar 1999 21:48:08 -0800 (PST) Subject: ns query: source routing Message-ID: Hi, I've been looking at the ns tutorial and documentation. I have what's probably a trivial problem, but something I've not found anything on. I want to do source routing using ns (I want to specify the routes and not have ns compute them). Is this doable easily? Is this the same as manual routing which ns supports but I don't know how to use? Any help would be greatly appreciated. Thank you, -- Anupam Singhal singhala@cs.stanford.edu 650.497.2283 From eroesch@iutsud.u-strasbg.fr Wed Mar 10 13:51:54 1999 From: eroesch@iutsud.u-strasbg.fr (eroesch@iutsud.u-strasbg.fr) Date: Wed, 10 Mar 1999 14:51:54 +0100 Subject: Users and Programmers Manual In-Reply-To: Message-ID: <3.0.1.32.19990310145154.00945be0@iutsud.u-strasbg.fr> Hello all ! I am supposed to give my paper to the teacher wednesday .. I have a lot of work right now and don't have much time to spend into translating it in English .. Anyway I'll send the url where you can see what i did as soon as possible .. I will do my best to give explanations to the code, but a little c/c++ knowledge is expected ! ----- Etienne From Huang Hai Wed Mar 10 13:53:12 1999 From: Huang Hai (Huang Hai) Date: Wed, 10 Mar 1999 21:53:12 +0800 Subject: Can't multicast w/simplex links? References: Message-ID: <19911.990310@chpcc.edu.cn> Hello Daniel, While joining a multicast tree, a node must send message to the sender via the backward simplex link. But you can circumvent the problem by using "Rendezvous Point(RP) rooted shared tree", set a virtual sender node and make it the root of the "RP tree", then link the real sender and the virtual sender with a simplex link. The newest snapshot of ns will support it. The following script maybe work (not tested). set mproto CtrMcast set v-sender [$ns node] #virtual sender set r-sender [$ns node] #real sender set mrthandle [$ns mrtproto $mproto {}] $mrthandle set_c_rp [$v-sender] # set the root of multicast # tree to be the virtual sender $ns simplex-link $r-sender $v-sender 1.0Mb 10ms DropTail # link real sender and virtual # sender with simplex link # NOTE: ALL OTHER LINKS should be # duplex link. If you use old version of ns or cannot make it work, please contact me. DF> My ns version is 2.1b4a. DF> I'm trying to "broadcast" a message from one node to several others, DF> using simplex links. I tried to take ~ns/tcl/ex/newmcast/mcast1.tcl and DF> change the duplex-links to simplex-links. For example, I changed DF> $ns duplex-link $n0 $n1 1.5Mb 10ms DropTail DF> to DF> $ns simplex-link $n0 $n1 1.5Mb 10ms DropTail DF> and similarly elsewhere. (I also commented-out the duplex-link-op DF> lines.) DF> Why do I find no traffic is sent after making these changes? DF> Thanks, DF> --dan DF> --------------------------------------------------------------------------- DF> Daniel Friedman danielf@isr.umd.edu http://www.isr.umd.edu/~danielf Best regards, Huang mailto:thumahh@chpcc.edu.cn From rhosny@irisa.fr Wed Mar 10 14:54:34 1999 From: rhosny@irisa.fr (Reda B. Hosny) Date: Wed, 10 Mar 1999 15:54:34 +0100 Subject: NS2 and LINUX? Message-ID: <36E687AA.C8846A58@irisa.fr> Hi, Does anyone tried to compile NS2 on linux machines (x86) ...? and specially if he try the network emulator facility in it? Thanks in advance, Reda. From leefion@nortelnetworks.com Wed Mar 10 15:27:01 1999 From: leefion@nortelnetworks.com (Fion Lee) Date: Wed, 10 Mar 1999 10:27:01 -0500 Subject: ns not working after recompiling, tclsh8.0 not found Message-ID: Hi Anurag, I received the same error before. What I did was to add in the path of tclsh8.0 (../tclbox/bin/tclsh8.0 if you are using ns-allinone) in ..../ns-2/Makefile line 41 TCLSH = tclsh8.0 >From my understanding if you changed something in .../ns-2/tcl/lib/, tclsh8.0 would be invoked. It is used to generate the file ns_tcl.cc in ..../ns-2/gen/ . If tclsh8.0 was not found, the ns_tcl.cc generated would not be correct. But since ns_tcl.cc and ns_tcl.o already exist and nothing else in .../ns-2/tcl/lib has changed, that's why your second compile did not give any error. So, you have to remove ns_tcl.cc and ns_tcl.o before you type "make" again. Hope this helps. Fion > ---------- > From: Anurag > Sent: Tuesday, March 9, 1999 11:53 PM > To: 'NS users mailing list' > Subject: ns not working after recompiling, tclsh8.0 not found > > Hi > > I recompiled ns after some modifications (added a new type of queue) but > it has stoped working after that. > > I did 'make depend' > > it gave mesage > emulate/net-pcap.cc:60: pcap.h: No such file or directory > emulate/arp.cc:50: net/ethernet.h: No such file or directory > I assume these files are not needed. > > after that i did 'make'. It seems to compile. After that even if i run a > simple test, ns does not work, it is not able to get the new instance of > the simulator. > the error message is > > > ns test_red.tcl > invalid command name "Simulator" > while executing "Simulator create _o1 " > invoked from within > "catch "$className create $o $args" msg" > (procedure "new" line 3) > invoked from within > "new Simulator" > (file "test_red.tcl" line 2) > > > First time I recompiled, 'make' gave some error message > > tclsh8.0 not found .... > > > but on second recompile there was no such error message. > > I do not understand what went worng. > > Please help. > > thanks > > with regards > Anurag > From anurag@cs.ust.hk Wed Mar 10 15:37:05 1999 From: anurag@cs.ust.hk (Anurag) Date: Wed, 10 Mar 1999 23:37:05 +0800 (HKT) Subject: can not make xgraph under solaris SUN OS 5.6 Message-ID: Hi I tried reinstalling ns-allinone-2.1b4a under solaris 5.6 , I used install but xgraph failed. I looked at the patches and tried to make again but it comes out with the error given below. Please let me know what may have gone wrong. > make cc -O -Xc -xF -xcg92 -I/usr/openwin/include -Dsun -Dsparc -DSVR4 -DSYSV -c xgraph.c "xgraph.c", line 109: warning: argument #1 is incompatible with prototype: prototype: pointer to function(pointer to struct _XDisplay {}, pointer to struct {int type, pointer to struct _XDisplay {..} display, u... : "/usr/openwin/include/X11/Xlib.h", line 1952 argument : pointer to function() returning void "xgraph.c", line 121: undefined symbol: HUGE "xgraph.c", line 645: warning: using out of scope declaration: NewWindow "xgraph.c", line 834: warning: argument #3 is incompatible with prototype: prototype: pointer to function(ulong, int, pointer to void) returning enum xtb_hret_defn {XTB_STOP(2), XTB_HANDLED(1), XTB_NOTDEF(0)} : "./xtb.h", line 71 argument : pointer to function(ulong, int, pointer to char) returning enum xtb_hret_defn {XTB_STOP(2), XTB_HANDLED(1), XTB_NOTDEF(0)} "xgraph.c", line 838: warning: argument #3 is incompatible with prototype: prototype: pointer to function(ulong, int, pointer to void) returning enum xtb_hret_defn {XTB_STOP(2), XTB_HANDLED(1), XTB_NOTDEF(0)} : "./xtb.h", line 71 argument : pointer to function(ulong, int, pointer to char) returning enum xtb_hret_defn {XTB_STOP(2), XTB_HANDLED(1), XTB_NOTDEF(0)} "xgraph.c", line 844: warning: argument #3 is incompatible with prototype: prototype: pointer to function(ulong, int, pointer to void) returning enum xtb_hret_defn {XTB_STOP(2), XTB_HANDLED(1), XTB_NOTDEF(0)} : "./xtb.h", line 71 argument : pointer to function(ulong, int, pointer to char) returning enum xtb_hret_defn {XTB_STOP(2), XTB_HANDLED(1), XTB_NOTDEF(0)} "xgraph.c", line 851: warning: argument #3 is incompatible with prototype: prototype: pointer to function(ulong, int, pointer to void) returning enum xtb_hret_defn {XTB_STOP(2), XTB_HANDLED(1), XTB_NOTDEF(0)} : "./xtb.h", line 71 argument : pointer to function(ulong, int, pointer to char) returning enum xtb_hret_defn {XTB_STOP(2), XTB_HANDLED(1), XTB_NOTDEF(0)} "xgraph.c", line 858: warning: argument #3 is incompatible with prototype: prototype: pointer to function(ulong, int, pointer to void) returning enum xtb_hret_defn {XTB_STOP(2), XTB_HANDLED(1), XTB_NOTDEF(0)} : "./xtb.h", line 71 argument : pointer to function(ulong, int, pointer to char) returning enum xtb_hret_defn {XTB_STOP(2), XTB_HANDLED(1), XTB_NOTDEF(0)} "xgraph.c", line 866: warning: argument #3 is incompatible with prototype: prototype: pointer to function(ulong, int, pointer to void) returning enum xtb_hret_defn {XTB_STOP(2), XTB_HANDLED(1), XTB_NOTDEF(0)} : "./xtb.h", line 71 argument : pointer to function(ulong, int, pointer to char) returning enum xtb_hret_defn {XTB_STOP(2), XTB_HANDLED(1), XTB_NOTDEF(0)} "xgraph.c", line 1125: warning: improper pointer/integer combination: op "=" cc: acomp failed for xgraph.c *** Error code 2 make: Fatal error: Command failed for target `xgraph.o' thanks in advance. with Regards Anurag, From johnh@ISI.EDU Wed Mar 10 16:44:43 1999 From: johnh@ISI.EDU (John Heidemann) Date: Wed, 10 Mar 1999 08:44:43 -0800 Subject: NS2 and LINUX? In-Reply-To: <36E687AA.C8846A58@irisa.fr> Message-ID: <199903101644.IAA28942@dash.isi.edu> On Wed, 10 Mar 1999 15:54:34 +0100, "Reda B. Hosny" wrote: >Hi, > >Does anyone tried to compile NS2 on linux machines (x86) ...? >and specially if he try the network emulator facility in it? Linux (RedHat 5.2 on x86) is one of our development platforms, so basic ns works on it. Unfortunately the network emulator requires more OS support and has only been tested on FreeBSD. We'd be happy to offer some assistance (advice mostly at this point) to someone wanting to make the emulation facility more portable. -John Heidemann From harlisya@erg.abdn.ac.uk Wed Mar 10 17:34:28 1999 From: harlisya@erg.abdn.ac.uk (Harlisya Harun) Date: Wed, 10 Mar 1999 17:34:28 +0000 Subject: libotcl.so Message-ID: <36E6AD1E.D3DFC02@erg.abdn.ac.uk> Hi,, I do not know what's wrong with my ns... whenever I invoke the ns command, I received these error messages: ld.so.1: ns: fatal: libotcl.so: open failed: No such file or directory I have browsed the NS installation problems web site, but does not help much.... I have installed all the ns stuff into my home directory instead of usr/local... Therefore, I have set the LD_LIBRARY_PATH into my home directory... or is there anything missing from my .cshrc file? part of my cshrc file (that indicate the nsallinone directory): : : #setenv LD_LIBRARY_PATH "$OPENWINHOME/lib:/usr/lib:/usr/local/lib:/opt/SUNWmfwm/lib" #setenv LD_LIBRARY_PATH /usr/ccs/lib:$LD_LIBRARY_PATH #setenv LD_LIBRARY_PATH $SPARCWORKSHOME/lib:/usr/ucblib:$LD_LIBRARY_PATH #setenv LD_LIBRARY_PATH /usr/local/simulabin/lib:$LD_LIBRARY_PATH setenv LD_LIBRARY_PATH /home/thomas/harlisya/NS/otcl:$LD_LIBRARY_PATH : : set path = ($path /home/thomas/harlisya/NS/bin) : : So, far, my attempts are: (1) "find . -name 'libotcl.so'" in the ns directory. The libotcl.so is indeed in the otcl directory... and I have already add the $LD_LIBRARY_PATH to it in my cshrc file (please refer above) (2) I have downloaded the current version of otcl and installed it... but, still have the same problems... I really appreciate any help! Thank you. harlisya From salehi@ISI.EDU Wed Mar 10 18:56:05 1999 From: salehi@ISI.EDU (Nader Salehi) Date: Wed, 10 Mar 1999 10:56:05 -0800 (PST) Subject: libotcl.so In-Reply-To: <36E6AD1E.D3DFC02@erg.abdn.ac.uk> References: <36E6AD1E.D3DFC02@erg.abdn.ac.uk> Message-ID: <199903101856.KAA07972@joy.isi.edu> The reason is you don't have write permission to copy libotcl.so into /usr/local/lib. One quick workaround for you is to replace the following line in Makefile.in INST_OLIBSH= @INST_OLIBSH@ to INST_OLIBSH= @prefix@/lib and re-run `configure'. Nader >>> "Harlisya" == Harlisya Harun writes: Harlisya> Hi,, I do not know what's wrong with my ns... whenever I Harlisya> invoke the ns command, I received these error messages: Harlisya> ld.so.1: ns: fatal: libotcl.so: open failed: No such file or Harlisya> directory Harlisya> I have browsed the NS installation problems web site, but Harlisya> does not help much.... I have installed all the ns stuff Harlisya> into my home directory instead of usr/local... Therefore, I Harlisya> have set the LD_LIBRARY_PATH into my home directory... or is Harlisya> there anything missing from my .cshrc file? Harlisya> part of my cshrc file (that indicate the nsallinone Harlisya> directory): : : Harlisya> #setenv LD_LIBRARY_PATH Harlisya> "$OPENWINHOME/lib:/usr/lib:/usr/local/lib:/opt/SUNWmfwm/lib" Harlisya> #setenv LD_LIBRARY_PATH /usr/ccs/lib:$LD_LIBRARY_PATH Harlisya> #setenv LD_LIBRARY_PATH Harlisya> $SPARCWORKSHOME/lib:/usr/ucblib:$LD_LIBRARY_PATH Harlisya> #setenv LD_LIBRARY_PATH Harlisya> /usr/local/simulabin/lib:$LD_LIBRARY_PATH setenv Harlisya> LD_LIBRARY_PATH Harlisya> /home/thomas/harlisya/NS/otcl:$LD_LIBRARY_PATH : : set path Harlisya> = ($path /home/thomas/harlisya/NS/bin) Harlisya> : : Harlisya> So, far, my attempts are: (1) "find . -name 'libotcl.so'" in Harlisya> the ns directory. The libotcl.so is indeed in the otcl Harlisya> directory... and I have already add the $LD_LIBRARY_PATH to Harlisya> it in my cshrc file (please refer above) Harlisya> (2) I have downloaded the current version of otcl and Harlisya> installed it... but, still have the same problems... Harlisya> I really appreciate any help! Harlisya> Thank you. Harlisya> harlisya From hussein@maxwell.ee.washington.edu Wed Mar 10 21:21:20 1999 From: hussein@maxwell.ee.washington.edu (AL-HUSSEIN ABOU-ZEID) Date: Wed, 10 Mar 1999 13:21:20 PST Subject: Bugs in errmodel.cc reported by Saad Biaz in 9803/0047.html Message-ID: <199903102121.NAA00340@maxwell.ee.washington.edu> I noticed the baove mentioned e-mail in the archives, and I tried to do the recommended changes in errmodel.cc, but I found that it doesn't seem to be the same file. So does this mean that these bugs (binding and initialization) have been fixed in ns v2.1b4a? Thanks in advance. -Hussein ------------------- Electrical Engineering Department University of Washington, Seattle From haoboy@isi.edu Wed Mar 10 22:42:14 1999 From: haoboy@isi.edu (Haobo Yu) Date: Wed, 10 Mar 1999 14:42:14 -0800 (PST) Subject: Bugs in errmodel.cc reported by Saad Biaz in 9803/0047.html In-Reply-To: <199903102121.NAA00340@maxwell.ee.washington.edu> Message-ID: ErrorModel was changed and those pieces are no longer there. In this sense, it's fixed. - Haobo On Wed, 10 Mar 1999, AL-HUSSEIN ABOU-ZEID wrote: > > I noticed the baove mentioned e-mail in the archives, and I tried to do > the recommended changes in errmodel.cc, but I found that it doesn't seem > to be the same file. So does this mean that these bugs (binding and > initialization) have been fixed in ns v2.1b4a? > > Thanks in advance. > > -Hussein > ------------------- > Electrical Engineering Department > University of Washington, Seattle > From danielf@isr.umd.edu Wed Mar 10 22:45:09 1999 From: danielf@isr.umd.edu (Daniel Friedman) Date: Wed, 10 Mar 1999 17:45:09 -0500 (EST) Subject: can't cancel a timer--status_ is 2 ? Message-ID: My ns version is 2.1b4a. I'm having a difficulty canceling a timer, within a new agent I'm developing. (That is, I'm doing all this within C++, not OTcl.) Whenever I try to cancel the timer, I check its status_, and find it's not set to TIMER_PENDING, but that it's numerically equal to 2. Why might this be so? I also find that TIMER_IDLE and TIMER_PENDING are #define'ed in agent.h, but that TIMER_HANDLING is not. Should this suggest to me that my new agent should never find its timer has status_ of TIMER_PENDING? Many thanks, --dan --------------------------------------------------------------------------- Daniel Friedman danielf@isr.umd.edu http://www.isr.umd.edu/~danielf From jb.yang@utoronto.ca Wed Mar 10 23:00:17 1999 From: jb.yang@utoronto.ca (YANG JIANGBIN) Date: Wed, 10 Mar 1999 18:00:17 -0500 Subject: ns-2 queue delay/jitter Message-ID: <36E6F981.5C1@utoronto.ca> Dear ns-2 Experts, I'm a new ns-2 user. Could any one of you kindly tell me how to get the mean value & variance of queue delays of a link in ns-2? I read the ns-2 Manual. It seems that simply QueueMonitor & Samples objects & the Trace and Monitoring Methods could work the statistics out. But I couldn't get them work. Looking forward to your help. Jiangbin Yang -------------------------------------------- Univ. of Toronto, Industrial Engineering http://www.ecf.toronto.edu/~jiangb -------------------------------------------- From Huang Hai Thu Mar 11 05:00:23 1999 From: Huang Hai (Huang Hai) Date: Thu, 11 Mar 1999 13:00:23 +0800 Subject: libotcl.so References: <36E6AD1E.D3DFC02@erg.abdn.ac.uk> Message-ID: <8541.990311@chpcc.edu.cn> Hello Harlisya, A simple solution is to delete libotcl.so in ~ns/otcl and make ns again. ns will be linked with libotcl.a staticly and need no libotcl.so at runtime. HH> Hi,, HH> I do not know what's wrong with my ns... whenever I invoke the HH> ns command, I received these error messages: HH> ld.so.1: ns: fatal: libotcl.so: open failed: No such file or directory HH> I have browsed the NS installation problems web site, but does not HH> help much.... I have installed all the ns stuff into my home directory HH> instead of usr/local... Therefore, I have set the LD_LIBRARY_PATH HH> into my home directory... or is there anything missing from my .cshrc HH> file? HH> part of my cshrc file (that indicate the nsallinone directory): HH> : HH> : HH> #setenv LD_LIBRARY_PATH HH> "$OPENWINHOME/lib:/usr/lib:/usr/local/lib:/opt/SUNWmfwm/lib" HH> #setenv LD_LIBRARY_PATH /usr/ccs/lib:$LD_LIBRARY_PATH HH> #setenv LD_LIBRARY_PATH $SPARCWORKSHOME/lib:/usr/ucblib:$LD_LIBRARY_PATH HH> #setenv LD_LIBRARY_PATH /usr/local/simulabin/lib:$LD_LIBRARY_PATH HH> setenv LD_LIBRARY_PATH /home/thomas/harlisya/NS/otcl:$LD_LIBRARY_PATH HH> : HH> : HH> set path = ($path /home/thomas/harlisya/NS/bin) HH> : HH> : HH> So, far, my attempts are: HH> (1) "find . -name 'libotcl.so'" in the ns directory. The libotcl.so is HH> indeed in the HH> otcl directory... and I have already add the $LD_LIBRARY_PATH to it in HH> my HH> cshrc file (please refer above) HH> (2) I have downloaded the current version of otcl and installed it... HH> but, still have HH> the same problems... HH> I really appreciate any help! HH> Thank you. HH> harlisya Best regards, Huang mailto:thumahh@chpcc.edu.cn From dpwu@fla.fujitsu.com Thu Mar 11 05:18:58 1999 From: dpwu@fla.fujitsu.com (Dapeng Wu) Date: Wed, 10 Mar 1999 21:18:58 -0800 Subject: installation problem on Tcl/Tk 8.0 Message-ID: <36E75242.49C1@fla.fujitsu.com> Dear All, I had a problem on installing Tcl/Tk 8.0.4 or 8.0.5 on Sun Ultra 30, Solaris 2.6. First I go to "unix" subdirectory and run ./configure --enable-gcc (otherwise cross-compiling error). Then run ./make which fails as follows: make: *** [regexp.o] Error 1 Any hint is highly appreciated. Dapeng From arni@caip.rutgers.edu Thu Mar 11 06:04:43 1999 From: arni@caip.rutgers.edu (arni@caip.rutgers.edu) Date: Thu, 11 Mar 1999 01:04:43 -0500 (EST) Subject: Two TBFs in succession.. Message-ID: HI, I am trying to put two TBFs in succession... Will the following code work..??(The code is from test-tbf.tcl) <..snip..> set a [new Agent/UDP] <.....Snip..> set tbf [new TBF] $tbf set bucket_ 1024 $tbf set rate_ 32000 $tbf set qlen_ 100 $ns attach-tbf-agent $n0 $a $tbf set tbf1 [new TBF] $tbf1 set bucket_ 2048 $tbf1 set rate_ 32000 $tbf1 set qlen_ 100 $ns attach-tbf-agent $n0 $a $tbf1 <.....Snip..> Thanks, Arni From duan@cs.umn.edu Thu Mar 11 15:55:10 1999 From: duan@cs.umn.edu (Zhenhai Duan) Date: Thu, 11 Mar 1999 09:55:10 -0600 (CST) Subject: Two TBFs in succession.. In-Reply-To: Message-ID: It should not do what you want. I copied the code from ns-lib.tcl and ns-agent.tcl: Simulator instproc attach-tbf-agent { node agent tbf } { $node attach $agent $agent attach-tbf $tbf } Agent instproc attach-tbf { tbf } { $tbf target [$self target] $self target $tbf } So in your code, the first tbf will be replaced by the second one. But I guess you can do it in this way. Not test yet. Add one instproc to TBF(it is as same as for Agent): TBF instproc attach-tbf { tbf } { $tbf target [$self target] $self target $tbf } And then, do $tbf attach-tbf $tbf1 Thanks. --Zhenhai On Thu, 11 Mar 1999 arni@caip.rutgers.edu wrote: > HI, > I am trying to put two TBFs in succession... > > Will the following code work..??(The code is from test-tbf.tcl) > > <..snip..> > set a [new Agent/UDP] > > <.....Snip..> > set tbf [new TBF] > $tbf set bucket_ 1024 > $tbf set rate_ 32000 > $tbf set qlen_ 100 > > $ns attach-tbf-agent $n0 $a $tbf > > set tbf1 [new TBF] > $tbf1 set bucket_ 2048 > $tbf1 set rate_ 32000 > $tbf1 set qlen_ 100 > > $ns attach-tbf-agent $n0 $a $tbf1 > > <.....Snip..> > > > Thanks, > Arni > > > From kwang@cs.umd.edu Thu Mar 11 20:01:22 1999 From: kwang@cs.umd.edu (Kuang-Yeh Wang) Date: Thu, 11 Mar 1999 15:01:22 -0500 (EST) Subject: bug report: VegasTcpAgent Message-ID: Problem: Under certain circumstances, TCP Vegas may set its cwnd_ (congestion window) to 0 and never transmit any packets again, even though there are packets waiting to be sent and the network is idle. Problem source and potential solutions: tcp-vegas.cc, line 137 "cwnd_ = v_newcwnd_". It's meant to restore cwnd_ to its value before it was inflated due to duplicate ACKs. Obviously VegasTcpAgent should check if cwnd_ has indeed been inflated before doing this. Problem is, the check (line 136) "if(dupacks_ > NUMDUPACKS && cwnd_ > v_newcwnd_)" is *not enough*. Here's a case where things go wrong: 1. Duplicate ACKs are received, and "v_worried_" is set to 2 (line 305). 2. Before any new ACKs arrives, a timeout occurs, and therefore "v_newcwnd_" is set to 0 (line 379). 3. A new ACK arrives, and it's determined that an outstanding packet has "expired" (line 281; note that v_worried_ > 0) and therefore dupacks_ = NUMDUPACKS (= 3). 4. A duplicate ACK arrives, so ++dupcaks_ (line 290). "v_newcwnd_ = double(win)" is not executed since we are in "CWND_ACTION_TIMEOUT" state and hence v_newcwnd_ stays 0. 5. A new ACK arrives and cwnd_ is set to v_newcwnd_ (line 137), which is 0. The TCP sender drops dead. I got this case using an error model on a link. Potential solutions: 1. When timeout occurs, set v_worried_ to 0. It seems to make no sense to "keep worried" in common cases, since usually all outstanding packets will be retransmitted anyway after a timeout. However, the problem may still occur if there are more than 3 duplicate ACKs right after a timeout and therefore v_newcwnd_ stays 0 and dupacks_ becomes > 3. 2. Inflate cwnd_ even though the test on lines 299, 300 fails. This closes a loophole in trying to guarantee that if dupacks_ > 3, cwnd_ must have been inflated. I am not sure if there are other loopholes. In fact, RenoTcpAgent does this in similar cases (tcp-reno.cc, line 88, whether dupack_action() decides to "slow down" or not). I've tried to fix it this way but haven't come up with a "clean" code that I'm happy with. 3. Another curious problem is the test "if(dupacks_ > NUMDUPACKS && cwnd_ > v_newcwnd_)" itself (line 136). I think it should be "if(dupacks_ >= NUMDUPACKS && cwnd_ > v_newcwnd_)". In "normal" cases (i.e., the problems I mentioned above *not included*), dupacks_ == 3 means cwnd_ has been inflated, and I don't see why it shouldn't be restored to its pre-inflation value in this particular case. A quick look at Brakmo's TCP Vegas implementation (on x-kernel; ftp://ftp.cs.arizona.edu/xkernel/new-protocols/Vegas.tar.Z) shows that it has the same problems of lingering "v_worried_" (1. above) and not "deflating" cwnd_ in some cases (3. above), so I'm not sure if they are bugs or features of TCP Vegas. The x-kernel implementation may not have the "drop dead" syndrome because it doesn't set v_newcwnd_ to 0 when a timeout occurs. However, it may still set a "wrong" cwnd_ value due to the "v_worried_" problem. In any case, I think we can't accept the "drop dead" phenomenon as a feature of VegasTcpAgent. If anyone knows of a newer TCP Vegas implementation (than the x-kernel version mentioned above) that has addressed these three problems, please let us (me and other interested people) know. Thanks a lot! ======================================== Kuang-Yeh Wang kwang@cs.umd.edu University of Maryland at College Park Department of Computer Science ======================================== From hussein@maxwell.ee.washington.edu Thu Mar 11 21:29:39 1999 From: hussein@maxwell.ee.washington.edu (AL-HUSSEIN ABOU-ZEID) Date: Thu, 11 Mar 1999 13:29:39 PST Subject: Counting the bytes received by TCPSink Message-ID: <199903112129.NAA19432@maxwell.ee.washington.edu> Hi, In Agent/LossMonitor, one could find the number of bytes received by using $agent set bytes_. I was wondering if one could do this with an Agent/TCPSink? Excuse me if this is a trivial question. "bytes_" is not defined in TCPSink. Is there some other "parameter" that would hold the number of bytes received by a TCPSink up to the current time. Thanks in advance, --Hussein. From hussein@maxwell.ee.washington.edu Fri Mar 12 00:24:12 1999 From: hussein@maxwell.ee.washington.edu (AL-HUSSEIN ABOU-ZEID) Date: Thu, 11 Mar 1999 16:24:12 PST Subject: Drops : Packets and/or/not ACKs Message-ID: <199903120024.QAA04402@maxwell.ee.washington.edu> Hi all, When you attach a two state loss model on a duplex link using `link-lossmodel' after a queue, a packet is lost if it happens to be on the channel when the channel state was bad. Does this apply to the ACK packet as well, or do the ACK packets get through regardless of the channel state? It seems to me that ACKs get through anyway. If this is true, is it possible to define, for a TCP session, a forward link for packet transmissions and a backward link for ACKs? (and hence be able to define different loss statistics on each, which might not be a good reflection for all real network situations, but would still help a lot). If you think this is answered somewhere (Archives or nsDoc), please inform me where since I haven't found mention of these important details anywhere. Thank you in advance for clarifying this matter. Hope it is sunny, wherever you are:-) It's sunny here in Seattle, for a change! --Hussein -------------------- Electrical Engineering Department, University of Washington, Seattle. From hussein@maxwell.ee.washington.edu Fri Mar 12 05:50:00 1999 From: hussein@maxwell.ee.washington.edu (AL-HUSSEIN ABOU-ZEID) Date: Thu, 11 Mar 1999 21:50:00 PST Subject: Drops ; Packets and/or/not ACKs Message-ID: <199903120550.VAA22170@maxwell.ee.washington.edu> Hi all, When you attach a two state loss model on a duplex link using `link-lossmodel' after a queue, a packet is lost if it happens to be on the channel when the channel state was bad. Does this apply to the ACK packet as well, or do the ACK packets get through regardless of the channel state? It seems to me that ACKs get through anyway. If this is true, is it possible to define, for a TCP session, a forward link for packet transmissions and a backward link for ACKs? (and hence be able to define different loss statistics on each, which might not be a good reflection for all real network situations, but would still help a lot). If you think this is answered somewhere (Archives or nsDoc), please inform me where since I haven't found mention of these important details anywhere. Thank you in advance for clarifying this matter. --Hussein -------------------- Electrical Engineering Department, University of Washington, Seattle. From dpwu@fla.fujitsu.com Fri Mar 12 07:53:12 1999 From: dpwu@fla.fujitsu.com (Dapeng Wu) Date: Thu, 11 Mar 1999 23:53:12 -0800 Subject: nam doesn't work. Message-ID: <36E8C7E8.3706@fla.fujitsu.com> Dear All: I got the executable nam by the following steps: ./configure --enable-gcc --with-tcl --with-tk --with-otcl --with-tclcl make and run it as follows: nam ex/test.nam or nam -S ex/test.nam But nothing showed up on the screen. I can see it running. I tried all the nam traces and downloaded sample traces but failed. Any help is appreciated. Thanks, Dapeng From chj@lin.foa.se Fri Mar 12 11:13:06 1999 From: chj@lin.foa.se (Christian Jvnsson FOA 72) Date: Fri, 12 Mar 1999 12:13:06 +0100 Subject: nam doesn't work. In-Reply-To: dpwu's message of Thu, 11 Mar 1999 23:53:12 -0800. <36E8C7E8.3706@fla.fujitsu.com> Message-ID: <199903121113.MAA14715@arnljot.lin.foa.se> It could be the problem mentioned at http://www-mash.cs.berkeley.edu/dist/archive/ns-users/9903/0056.html with a suggested patch at http://www-mash.cs.berkeley.edu/dist/archive/ns-users/9903/0057.html Cheers, /ChJ From S.A.Janssen@research.kpn.com Fri Mar 12 12:24:02 1999 From: S.A.Janssen@research.kpn.com (Janssen, S.A.) Date: Fri, 12 Mar 1999 13:24:02 +0100 Subject: handler function Message-ID: <3A8F273F00E8D111BE4A00805FA7AC54DC4852@ntl10.research.kpn.com> Hi, can someone explain the following to me: Some objects have a handler() and a recv() method. To me it seems that if object A wants to schedule an event at object B, - it calls schedule and the handle() method at object B is invoked. (Y/N)? - When the handle() method at object B doesn't exist, it's recv() method is invoked. (Y/N) - When bypassing the scheduler, object A uses target_->recv(p,h) and object B's recv() function is invoked directly by object A (Y/N)? - So what's the function of the handler exactly? - Why should you use the bypass instead of always the scheduler (because you want to avoid the handler??) Regards, Sjoerd Janssen From anurag@cs.ust.hk Fri Mar 12 15:27:31 1999 From: anurag@cs.ust.hk (Anurag) Date: Fri, 12 Mar 1999 23:27:31 +0800 (HKT) Subject: filter and token bucket filter Message-ID: Hi Where and how do we use filter in ns? Where can i get details on token bucket filter in ns? thanks with Regards Anurag, From duan@cs.umn.edu Fri Mar 12 16:06:41 1999 From: duan@cs.umn.edu (Zhenhai Duan) Date: Fri, 12 Mar 1999 10:06:41 -0600 (CST) Subject: filter and token bucket filter In-Reply-To: Message-ID: > Hi > > Where and how do we use filter in ns? > Where can i get details on token bucket filter in ns? Take a look the files: tbf.h, tbf.cc, and tcl/ex/test-tbf.tcl Thanks. --Zhenhai > > thanks > > with Regards > Anurag, > > From sahu@cs.umass.edu Fri Mar 12 16:13:03 1999 From: sahu@cs.umass.edu (Sambit Sahu) Date: Fri, 12 Mar 1999 11:13:03 -0500 (EST) Subject: RIO support NS Message-ID: <199903121613.LAA03919@thor.cs.umass.edu> Hi, Is there any implementation of RIO in NS that is publicly available? Any pointer in this regard would be of great help. Thanks, Sambit From Marc.Volmer@oenzl.siemens.de Fri Mar 12 16:40:15 1999 From: Marc.Volmer@oenzl.siemens.de (Volmer, Marc) Date: Fri, 12 Mar 1999 17:40:15 +0100 Subject: tclsh8.0 Message-ID: <1999Mar12.173500.2013.83018@msmail.oenzl.siemens.de> Please help !!! After I modifiy any file from /ns-2/tcl/lib, make writes: /bin/sh: tclsh8.0: command not found Afterwards, ns won't run any more... :-( I need help !!! Marc From yuri@who.isi.edu Fri Mar 12 17:51:16 1999 From: yuri@who.isi.edu (Yuri Pryadkin) Date: 12 Mar 1999 09:51:16 -0800 Subject: handler function In-Reply-To: "Janssen, S.A."'s message of "Fri, 12 Mar 1999 13:24:02 +0100" References: <3A8F273F00E8D111BE4A00805FA7AC54DC4852@ntl10.research.kpn.com> Message-ID: "Janssen, S.A." writes: > Hi, > > can someone explain the following to me: > > Some objects have a handler() and a recv() method. To me it seems that if > object A wants to schedule an event at object B, > > - it calls schedule and the handle() method at object B is invoked. (Y/N)? Y > - When the handle() method at object B doesn't exist, it's recv() method is > invoked. (Y/N) Y, assuming that the object derives from NsObject > - When bypassing the scheduler, object A uses target_->recv(p,h) and object > B's recv() function is invoked directly by object A (Y/N)? Y > > - So what's the function of the handler exactly? Most often it's used to schedule a future event. Handler, in fact, is a container for a callback function. And an event is not necessarily a packet, it may be e.g. a wake-up call for a queue. > - Why should you use the bypass instead of always the scheduler (because you > want to avoid the handler??) For example, if you want to transfer a packet from one object to another and you don't need any delay in between, you can directly call recv method on this object. If you do need a delay however, you use schedule(). -Yuri From Lloyd Wood Fri Mar 12 20:34:05 1999 From: Lloyd Wood (Lloyd Wood) Date: Fri, 12 Mar 1999 20:34:05 +0000 (BST) Subject: Autogenerated ns class documentation Message-ID: Autogenerated documentation of the ns class hierarchy: http://www-sop.inria.fr/rodeo/personnel/Antoine.Clerget/ns/ was built using Doc++: http://www.zib.de/Visual/software/doc++/ This strikes me as very neat (okay, the java applets might just be overkill) and perhaps worth using and rebuilding regularly (with daily snapshots?) to automate explanations of the classes online /update really out-of-date parts of the online ns manual page. Worth looking at for ns and nam? Cheers, L. PGP From Lloyd Wood Fri Mar 12 23:14:03 1999 From: Lloyd Wood (Lloyd Wood) Date: Fri, 12 Mar 1999 23:14:03 +0000 (BST) Subject: Autogenerated ns class documentation In-Reply-To: Message-ID: On Fri, 12 Mar 1999, Lloyd Wood wrote: > Autogenerated documentation of the ns class hierarchy: > > http://www-sop.inria.fr/rodeo/personnel/Antoine.Clerget/ns/ > > was built using Doc++: > > http://www.zib.de/Visual/software/doc++/ > > This strikes me as very neat (okay, the java applets might just be > overkill) and perhaps worth using and rebuilding regularly (with daily > snapshots?) to automate explanations of the classes online /update > really out-of-date parts of the online ns manual page. > > Worth looking at for ns and nam? Antoine Clerget adds: |> Cool. will mention doc++ to the ns mailing list. |> | | I should aleady have, but I was planning to change a few things | before that. | I think it is however "usable". | I had to do some work on doc++ for it to understand OTcl, but it | seems ok now. | Version concerned is 2.1b4. | Helped me understand ns. definitely a how-I-did-it in there so that the interface can be duplicated elsewhere... cheers, L. PGP From jchee@dacl3.snu.ac.kr Sat Mar 13 01:18:13 1999 From: jchee@dacl3.snu.ac.kr (Joo Chang-hee) Date: Sat, 13 Mar 1999 10:18:13 +0900 Subject: TCP Vegas could not count "retransmit(by timeout)" ? Message-ID: <36E9BCD5.AF619FE0@netlab.snu.ac.kr> Dear all I use "ns-allinone 2.1b4". "nrexmit_" among many variables in "tcp.cc", counts # of "retransmit(by timeout)". In "tcp-reno.cc" and "tcp-newreno.cc", the variable "nrexmit_" in the function "timeout" in "tcp.cc" is used to count # of retransmit(by timeout). but in "tcp-vegas.cc", the fuction "timeout" in "tcp.cc" is not called. And Vegas uses their only function "timeout". but in that code, I can't find the variable "nrexmit_" and any other variable related to # of retransmit(by timeout). is it a small bug ? and can I add a line "++nrexmit_" just before "slowdown" is called ? any comment could be helpful. From syan@jupiter.nal.utoronto.ca Sat Mar 13 20:09:44 1999 From: syan@jupiter.nal.utoronto.ca (Shuqian Yan) Date: Sat, 13 Mar 1999 15:09:44 -0500 (EST) Subject: packet::copy() Message-ID: Hello, This is a question about the packet::copy() method defined in ns2. When a node's replicator produce multiple copies of the original packet and forward each copy to downstream nodes, these copies are identical, excepet the uid field, because each new pkt generated will be assgined a unique uid. But when I look at the output trace file and track any of the mutlicast pkt, this seems not true, each copy of a pkt has the same uid as the original pkt. Has anyone notice this? and why? tks, shuqian From rajkumar@cs.tamu.edu Sat Mar 13 22:30:04 1999 From: rajkumar@cs.tamu.edu (Rajkumar - Paulraj) Date: Sat, 13 Mar 1999 16:30:04 -0600 (CST) Subject: packet::copy() In-Reply-To: Message-ID: packet::copy() will not generate an unique id for each of the copies. copy() will just create identical packets; even the packet header is identical. Your copy method is functioning correctly. Rajkumar > > This is a question about the packet::copy() method defined in ns2. When a > node's replicator produce multiple copies of the original packet and > forward each copy to downstream nodes, these copies are identical, > excepet the uid field, because each new pkt generated will be assgined a > unique uid. But when I look at the output trace file and track any > of the mutlicast pkt, this seems not true, each copy of a pkt has the > same uid as the original pkt. Has anyone notice this? and why? > > tks, > > shuqian From clsmith@engin.umich.edu Sat Mar 13 22:52:20 1999 From: clsmith@engin.umich.edu (Smitty) Date: Sat, 13 Mar 1999 17:52:20 -0500 (EST) Subject: Packet size problem/question Message-ID: Okay, here's the deal, hopefully someone can help me. I've read the notes and Docs, and the tutorial, and scanned the archive. I am trying to get a new agent implemented that sends a packet to another node, and this other node looks at it and sends an acknowledgement bck. Both nodes are running the same agent, so I have a recv that checks if it should be an acknowledged packet or not. Upon seeing that ti should ack the packet, it does a Packet *pktret = allocpkt();. The agent who then sends this packet shows that the hdr_cmn->size_ of this packet is correctly 0, i.e., only the header is necessary? Or should that be including the size of the header? But at any rate, the agent who receives this packet sees it's size as the size of the packet that generated the ack, not as 0 or whatever it should be. Any help would be appreciated, especially if this stems from some gross misunderstanding of how ns uses packets/agents. Thanks. - Christopher Smith, Graduate Student at University of Mich. http://www-personal.engin.umich.edu/~clsmith/ From jb.yang@utoronto.ca Mon Mar 15 05:41:35 1999 From: jb.yang@utoronto.ca (Jiangbin Yang & Hongmei Cao) Date: Mon, 15 Mar 1999 00:41:35 -0500 Subject: Queue Limits Message-ID: <36EC9D8F.575@utoronto.ca> Hello, Can anyone answer the 2 questions below? 1. What's the difference between the NS command "queue-limit" and the configuration parameter "limit_" of Queue objects? 2. Is the unit of "maxqueue_" of SFQ in bytes or pkts? Looking forward, Jiangbin Yang ---------------------------------------- Univ. of Toronto, Industrial Engineering http://www.ecf.toronto.edu/~jiangb ---------------------------------------- From dpwu@fla.fujitsu.com Mon Mar 15 06:00:28 1999 From: dpwu@fla.fujitsu.com (Dapeng Wu) Date: Sun, 14 Mar 1999 22:00:28 -0800 Subject: a question Message-ID: <36ECA1FC.6E8D@fla.fujitsu.com> Dear all, I'm wondering if anyone can explain the meaning of "$self" and "instvar" in the following tcl script (in anim-ctrl.tcl): $self instvar NAM_PORT_ NAM_SOCK_ Thank you for your help. Dapeng From haoboy@isi.edu Mon Mar 15 06:04:18 1999 From: haoboy@isi.edu (Haobo Yu) Date: Sun, 14 Mar 1999 22:04:18 -0800 (PST) Subject: a question In-Reply-To: <36ECA1FC.6E8D@fla.fujitsu.com> Message-ID: Please look at OTcl's documentation (~otcl/doc in distribution). - Haobo On Sun, 14 Mar 1999, Dapeng Wu wrote: > Dear all, > > I'm wondering if anyone can explain the meaning of "$self" and > "instvar" in the following tcl script (in anim-ctrl.tcl): > > $self instvar NAM_PORT_ NAM_SOCK_ > > Thank you for your help. > > Dapeng > From gxu@Eng.UA.EDU Mon Mar 15 06:19:11 1999 From: gxu@Eng.UA.EDU (Gang Xu) Date: Mon, 15 Mar 1999 00:19:11 -0600 (CST) Subject: a question In-Reply-To: <36ECA1FC.6E8D@fla.fujitsu.com> Message-ID: It is OTCL. "$self" is similar to 'this' in C++. You can read the OTcl manual for more information. Gang On Sun, 14 Mar 1999, Dapeng Wu wrote: > Dear all, > > I'm wondering if anyone can explain the meaning of "$self" and > "instvar" in the following tcl script (in anim-ctrl.tcl): > > $self instvar NAM_PORT_ NAM_SOCK_ > > Thank you for your help. > > Dapeng > Gang Xu From roman.pletka@switzerland.org Mon Mar 15 08:36:24 1999 From: roman.pletka@switzerland.org (Roman A Pletka) Date: Mon, 15 Mar 1999 09:36:24 +0100 Subject: Queue Limits References: <36EC9D8F.575@utoronto.ca> Message-ID: <36ECC688.786D487A@zurich.ibm.com> Jiangbin Yang & Hongmei Cao wrote: > > Hello, > > Can anyone answer the 2 questions below? > > 1. What's the difference between the NS command "queue-limit" > and the configuration parameter "limit_" of Queue objects? queue-limit is a TCL method that sets the limit_ parameter in a queue (see tcl/lib/ns-lib.tcl) qlim_ (in C++) is binded to limit_ (TCL). See queue.cc. "queue-limit" and "limit_" end up in the same result. Just the way you get it is different. > 2. Is the unit of "maxqueue_" of SFQ in bytes or pkts? pkts. bye Roman -- -------------------------------------------------------- Roman Pletka roman.pletka@switzerland.org * * Also on WWW: http://studwww.eurecom.fr/~pletka * * -------------------------------------------------------- From sputha1@tiger.lsuiss.ocs.lsu.edu Mon Mar 15 15:29:10 1999 From: sputha1@tiger.lsuiss.ocs.lsu.edu (satish kumar reddy) Date: Mon, 15 Mar 1999 09:29:10 -0600 (CST) Subject: error message Message-ID: hi, can anyone tell me why i am getting the below error message??? _o2: unable to dispatch method color while executing "$ns color 0 green " (file "simple.tcl" line 14) Thank you. satish sputha1@tiger.lsu.edu @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ PUTHALAPAT SATISH KUMAR REDDY PROGRAM: MS MAJOR: ELECTRICAL AND COMPUTER ENGINEERING HOME ADDRESS: SYSTEMS ADMINISTRATOR 600 E.ROOSEVELT ST,APT# 284 DEPARTMENT OF EXPERIMENTAL BATON ROUGE STATISTICS. LOUISIANA 70802 HOME PHONE NO: OFFICE PHONE NO: (5O4)344-8873 (504)388-8316 E-MAIL ADDS: E-MAIL ADDS: sputha1@tiger.lsu.edu satish@oz.stat.lsu.edu sputha@ee.lsu.edu @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ From sputha1@tiger.lsuiss.ocs.lsu.edu Mon Mar 15 15:35:16 1999 From: sputha1@tiger.lsuiss.ocs.lsu.edu (satish kumar reddy) Date: Mon, 15 Mar 1999 09:35:16 -0600 (CST) Subject: rfc 2415-simulation studies of increased initial TCP window size Message-ID: Hi, Has anyone tried out the source code given for rfc2415??? Does anyone know the contact numbers for Kedarnath Poduri and Kathleen nichols, the authors for rfc 2415???????? Can anyone help with the simulation of increased initial window size???? Thank you. satish @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ PUTHALAPAT SATISH KUMAR REDDY PROGRAM: MS MAJOR: ELECTRICAL AND COMPUTER ENGINEERING HOME ADDRESS: SYSTEMS ADMINISTRATOR 600 E.ROOSEVELT ST,APT# 284 DEPARTMENT OF EXPERIMENTAL BATON ROUGE STATISTICS. LOUISIANA 70802 HOME PHONE NO: OFFICE PHONE NO: (5O4)344-8873 (504)388-8316 E-MAIL ADDS: E-MAIL ADDS: sputha1@tiger.lsu.edu satish@oz.stat.lsu.edu sputha@ee.lsu.edu @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ From sputha@ee.lsu.edu Mon Mar 15 16:57:33 1999 From: sputha@ee.lsu.edu (Puthalapat Satish Kumar Reddy) Date: Mon, 15 Mar 1999 10:57:33 -0600 (CST) Subject: error message Message-ID: Hi, can anyone tell me the reason for this error message?? invalid command name "Agent/TcpApp/FtpServer" while executing "Agent/TcpApp/FtpServer create _o140 " invoked from within "if [catch "$className create $o $args" msg] { if [string match "__FAILED_SHADOW_OBJECT_" $msg] { delete $o return "" } global errorInfo error "class $ ..." (procedure "new" line 3) invoked from within "new Agent/TcpApp/FtpServer" invoked from within "set sftp [new Agent/TcpApp/FtpServer]..." ("for" body line 3) invoked from within "for {set j 2} {$j <= 2} {incr j 1} { set i [expr $j+4] set sftp [new Agent/TcpApp/FtpServer] $sftp file_size $filesize build_ftpclient [set n$j] [ ..." ("for" body line 2) invoked from within "for {set k 1} {$k <= 1} {incr k 1} { for {set j 2} {$j <= 2} {incr j 1} { set i [expr $j+4] set sftp [new Agent/TcpApp/FtpServer] $sftp file_si ..." (file "test_tcl.tcl" line 259) Thank you. satish @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ PUTHALAPAT SATISH KUMAR REDDY DEGREE: MS MAJOR: COMPUTER ENGINEERING HOME ADDRESS: HOME PHONE NUMBER: 600 E.ROOSEVELT STREET (504) 344-8873 BATON ROUGE LOUISIANA 70802 E-MAIL ADDRESSES: sputha@ee.lsu.edu sputha1@tiger.lsu.edu ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ From softrel9@nortelnetworks.com Mon Mar 15 17:12:09 1999 From: softrel9@nortelnetworks.com (Sarah Liu) Date: Mon, 15 Mar 1999 11:12:09 -0600 Subject: No subject Message-ID: <03E3E0690542D211A1490000F80836F43E45D9@zcard00f.ca.nortel.com> Hi. everybody: When I tried to run the test file of detailedDM under ns-2.1b5/tcl/ex/newmcast, I got the following error messages: can't read "PruneTimeout": no such variable (Object set line 1) invoked from within "[$self info class] set PruneTimeout" (procedure "_o174" line 5) (Object next line 5) invoked from within "$self next $sim $node" (procedure "_o174" line 2) (detailedDM init line 2) invoked from within "_o174 init _o3 _o30" (Class create line 1) invoked from within "detailedDM create _o174 _o3 _o30" invoked from within "catch "$className create $o $args" msg" (procedure "new" line 3) invoked from within "new $mproto $self $node" (procedure "_o3" line 2) (Simulator mrtproto-iifs line 2) invoked from within "$self mrtproto-iifs $mproto $Node_($n) """ (procedure "_o3" line 12) (Simulator mrtproto line 12) invoked from within "$ns mrtproto $mproto {}" (file "detailedDM1.tcl" line 74) Thanks very much for any help that could solve this problem. Cheers, Sarah ---------------------------------------------------------------------------- -------------------------------- Sarah Xiaohui Liu, 613-765-3203 o__ o~__ Email: softrel9@nortelnetworks.com _,>/_ _,>/_ u1452573@csi.uottawa.ca (*) (*) (*) (*) Mail Stop: 0C32, Nortel Networks Corp. ---------------------------------------------------------------------------- -------------------------------- From syan@comm.toronto.edu Mon Mar 15 17:44:35 1999 From: syan@comm.toronto.edu (Shuqian YAN) Date: Mon, 15 Mar 1999 12:44:35 -0500 (EST) Subject: your mail In-Reply-To: <03E3E0690542D211A1490000F80836F43E45D9@zcard00f.ca.nortel.com> Message-ID: Hi, If I am not wrong, detailDM is not longer working under current version of ns. As your error message indicates, there is no PruneTimeout value is defined, so you probably need to define this value explicitly in the simulation script, e.g. detailDM set PruneTimeout_ 0.5. Hope it helps, shuqian On Mon, 15 Mar 1999, Sarah Liu wrote: > Hi. everybody: > > When I tried to run the test file of detailedDM under > ns-2.1b5/tcl/ex/newmcast, I got the following error messages: > can't read "PruneTimeout": no such variable > (Object set line 1) > invoked from within > "[$self info class] set PruneTimeout" > (procedure "_o174" line 5) > (Object next line 5) > invoked from within > "$self next $sim $node" > (procedure "_o174" line 2) > (detailedDM init line 2) > invoked from within > "_o174 init _o3 _o30" > (Class create line 1) > invoked from within > "detailedDM create _o174 _o3 _o30" > invoked from within > "catch "$className create $o $args" msg" > (procedure "new" line 3) > invoked from within > "new $mproto $self $node" > (procedure "_o3" line 2) > (Simulator mrtproto-iifs line 2) > invoked from within > "$self mrtproto-iifs $mproto $Node_($n) """ > (procedure "_o3" line 12) > (Simulator mrtproto line 12) > invoked from within > "$ns mrtproto $mproto {}" > (file "detailedDM1.tcl" line 74) > > Thanks very much for any help that could solve this problem. > > Cheers, > > Sarah > > ---------------------------------------------------------------------------- > -------------------------------- > Sarah Xiaohui Liu, 613-765-3203 o__ o~__ > Email: softrel9@nortelnetworks.com _,>/_ _,>/_ > u1452573@csi.uottawa.ca (*) (*) (*) (*) > Mail Stop: 0C32, Nortel Networks Corp. > > ---------------------------------------------------------------------------- > -------------------------------- > > From syan@jupiter.nal.utoronto.ca Mon Mar 15 19:52:04 1999 From: syan@jupiter.nal.utoronto.ca (Shuqian Yan) Date: Mon, 15 Mar 1999 14:52:04 -0500 (EST) Subject: No subject Message-ID: Hi, If I am not wrong, detailDM is not longer working under current version of ns. As your error message indicates, there is no PruneTimeout value is defined, so you probably need to define this value explicitly in the simulation script, e.g. detailDM set PruneTimeout_ 0.5. Hope it helps, shuqian From softrel9@nortelnetworks.com Mon Mar 15 20:01:34 1999 From: softrel9@nortelnetworks.com (Sarah Liu) Date: Mon, 15 Mar 1999 15:01:34 -0500 Subject: detailedDM doesn't work Message-ID: <03E3E0690542D211A1490000F80836F43E45DA@zcard00f.ca.nortel.com> Hi, Shuqian: Following your suggestion, I added the line to set PruneTimeout, but it still doesn't work. I still got the following error messages. I just wonder if I can modify somewhere in the detailedDM.tcl to make it runable for the ns-2.1b5 instead of ns-2.1b4. Do you have any successful experience in that? ------------begin of error message---------------------- ns: _o13 new-group 0 32770 -1 cache-miss: _o10: unable to dispatch method get-oifs while executing "$node_ get-oifs" (procedure "_o179" line 13) (detailedDM handle-cache-miss line 13) invoked from within "_o179 handle-cache-miss 0 32770 -1" ("eval" body line 1) invoked from within "eval $self handle-$code $args" (procedure "_o179" line 2) (McastProtocol upcall line 2) invoked from within "$protocols_($iface) upcall $code $source $group $iface" (procedure "_o14" line 9) (mrtObject upcall line 9) invoked from within "$mrtObject_ upcall $code $src $group $iface" (procedure "_o10" line 3) (Node new-group line 3) invoked from within "$node_ new-group $src $group $iface $code" (procedure "_o13" line 3) (Classifier/Multicast new-group line 3) invoked from within "_o13 new-group 0 32770 -1 cache-miss" -------end of error message------------ Any help is highly appreciated. cheers, Sarah -----Original Message----- From: Shuqian YAN [mailto:syan@comm.toronto.edu] Sent: Monday, March 15, 1999 12:45 PM To: Liu, Sarah [CAR:0C21:EXCH] Cc: 'ns-users@mash.CS.Berkeley.EDU' Subject: Re: your mail Hi, If I am not wrong, detailDM is not longer working under current version of ns. As your error message indicates, there is no PruneTimeout value is defined, so you probably need to define this value explicitly in the simulation script, e.g. detailDM set PruneTimeout_ 0.5. Hope it helps, shuqian On Mon, 15 Mar 1999, Sarah Liu wrote: > Hi. everybody: > > When I tried to run the test file of detailedDM under > ns-2.1b5/tcl/ex/newmcast, I got the following error messages: > can't read "PruneTimeout": no such variable > (Object set line 1) > invoked from within > "[$self info class] set PruneTimeout" > (procedure "_o174" line 5) > (Object next line 5) > invoked from within > "$self next $sim $node" > (procedure "_o174" line 2) > (detailedDM init line 2) > invoked from within > "_o174 init _o3 _o30" > (Class create line 1) > invoked from within > "detailedDM create _o174 _o3 _o30" > invoked from within > "catch "$className create $o $args" msg" > (procedure "new" line 3) > invoked from within > "new $mproto $self $node" > (procedure "_o3" line 2) > (Simulator mrtproto-iifs line 2) > invoked from within > "$self mrtproto-iifs $mproto $Node_($n) """ > (procedure "_o3" line 12) > (Simulator mrtproto line 12) > invoked from within > "$ns mrtproto $mproto {}" > (file "detailedDM1.tcl" line 74) > > Thanks very much for any help that could solve this problem. > > Cheers, > > Sarah > > > From syan@comm.toronto.edu Mon Mar 15 20:22:58 1999 From: syan@comm.toronto.edu (Shuqian YAN) Date: Mon, 15 Mar 1999 15:22:58 -0500 (EST) Subject: detailedDM doesn't work In-Reply-To: <03E3E0690542D211A1490000F80836F43E45DA@zcard00f.ca.nortel.com> Message-ID: Sarah, This time round, you got different error message than the previous one. As I said before, detailDM.tcl seems broken and not longer supported (ns developers can further confirm the claim). I am not sure you really want to get into detailDM and make changes. But if you'd like to do so, then run it and see what error message it gave each time, and fix every error error message until the code can run successfully. (e.g. the get-oif method is obviously outdated, check ns-mcast.tcl, it defines various methods shared by all mutlicast protocol.) for the below problem, I make a guess, you probably should change Node::get-oif {} to Node::get-all-oifs{}, because this seems a improved version of get-oif{} and is currently defined in ns-mcast.tcl. Again, check out ns-mcast.tcl, see what is already defined and what else that haven't been defined such that you need to dfine them separately in detainDM.tcl to make the complete code work for you. Hope it helps, shuqian On Mon, 15 Mar 1999, Sarah Liu wrote: > Hi, Shuqian: > > Following your suggestion, I added the line to set PruneTimeout, but it > still doesn't work. I still got the following error messages. I just wonder > if I can modify somewhere in the detailedDM.tcl to make it runable for the > ns-2.1b5 instead of ns-2.1b4. Do you have any successful experience in that? > > ------------begin of error message---------------------- > ns: _o13 new-group 0 32770 -1 cache-miss: _o10: unable to dispatch method > get-oifs > while executing > "$node_ get-oifs" > (procedure "_o179" line 13) > (detailedDM handle-cache-miss line 13) > invoked from within > "_o179 handle-cache-miss 0 32770 -1" > ("eval" body line 1) > invoked from within > "eval $self handle-$code $args" > (procedure "_o179" line 2) > (McastProtocol upcall line 2) > invoked from within > "$protocols_($iface) upcall $code $source $group $iface" > (procedure "_o14" line 9) > (mrtObject upcall line 9) > invoked from within > "$mrtObject_ upcall $code $src $group $iface" > (procedure "_o10" line 3) > (Node new-group line 3) > invoked from within > "$node_ new-group $src $group $iface $code" > (procedure "_o13" line 3) > (Classifier/Multicast new-group line 3) > invoked from within > "_o13 new-group 0 32770 -1 cache-miss" > > -------end of error message------------ > > Any help is highly appreciated. > > cheers, > > Sarah > > -----Original Message----- > From: Shuqian YAN [mailto:syan@comm.toronto.edu] > Sent: Monday, March 15, 1999 12:45 PM > To: Liu, Sarah [CAR:0C21:EXCH] > Cc: 'ns-users@mash.CS.Berkeley.EDU' > Subject: Re: your mail > > > Hi, > > If I am not wrong, detailDM is not longer working under current version > of ns. > > As your error message indicates, there is no PruneTimeout value is > defined, so you probably need to define this value explicitly in the > simulation script, e.g. detailDM set PruneTimeout_ 0.5. > > Hope it helps, > > shuqian > > On Mon, 15 Mar 1999, Sarah Liu wrote: > > > Hi. everybody: > > > > When I tried to run the test file of detailedDM under > > ns-2.1b5/tcl/ex/newmcast, I got the following error messages: > > can't read "PruneTimeout": no such variable > > (Object set line 1) > > invoked from within > > "[$self info class] set PruneTimeout" > > (procedure "_o174" line 5) > > (Object next line 5) > > invoked from within > > "$self next $sim $node" > > (procedure "_o174" line 2) > > (detailedDM init line 2) > > invoked from within > > "_o174 init _o3 _o30" > > (Class create line 1) > > invoked from within > > "detailedDM create _o174 _o3 _o30" > > invoked from within > > "catch "$className create $o $args" msg" > > (procedure "new" line 3) > > invoked from within > > "new $mproto $self $node" > > (procedure "_o3" line 2) > > (Simulator mrtproto-iifs line 2) > > invoked from within > > "$self mrtproto-iifs $mproto $Node_($n) """ > > (procedure "_o3" line 12) > > (Simulator mrtproto line 12) > > invoked from within > > "$ns mrtproto $mproto {}" > > (file "detailedDM1.tcl" line 74) > > > > Thanks very much for any help that could solve this problem. > > > > Cheers, > > > > Sarah > > > > > > > From syan@jupiter.nal.utoronto.ca Mon Mar 15 20:32:29 1999 From: syan@jupiter.nal.utoronto.ca (Shuqian Yan) Date: Mon, 15 Mar 1999 15:32:29 -0500 (EST) Subject: detailedDM doesn't work Message-ID: Sarah, This time round, you got different error message than the previous one. As I said before, detailDM.tcl seems broken and not longer supported (ns developers can further confirm the claim). I am not sure you really want to get into detailDM and make changes. But if you'd like to do so, then run it and see what error message it gave each time, and fix every error error message until the code can run successfully. (e.g. the get-oif method is obviously outdated, check ns-mcast.tcl, it defines various methods shared by all mutlicast protocol.) for the below problem, I make a guess, you probably should change Node::get-oif {} to Node::get-all-oifs{}, because this seems a improved version of get-oif{} and is currently defined in ns-mcast.tcl. Again, check out ns-mcast.tcl, see what is already defined and what else that haven't been defined such that you need to dfine them separately in detainDM.tcl to make the complete code work for you. Hope it helps, shuqian From yuri@who.isi.edu Mon Mar 15 20:48:09 1999 From: yuri@who.isi.edu (Yuri Pryadkin) Date: 15 Mar 1999 12:48:09 -0800 Subject: detailedDM doesn't work In-Reply-To: "Sarah Liu"'s message of "Mon, 15 Mar 1999 15:01:34 -0500" References: <03E3E0690542D211A1490000F80836F43E45DA@zcard00f.ca.nortel.com> Message-ID: Sarah, there is no easy way to fix it because there have been too many changes to multicast/interface code/lans. Shuqian is right that it is not going to be supported in b5. I think it's easier to rewrite detailedDM from scratch than to fix it. -Yuri "Sarah Liu" writes: > Hi, Shuqian: > > Following your suggestion, I added the line to set PruneTimeout, but it > still doesn't work. I still got the following error messages. I just wonder > if I can modify somewhere in the detailedDM.tcl to make it runable for the > ns-2.1b5 instead of ns-2.1b4. Do you have any successful experience in that? > > ------------begin of error message---------------------- > ns: _o13 new-group 0 32770 -1 cache-miss: _o10: unable to dispatch method > get-oifs > while executing > "$node_ get-oifs" > (procedure "_o179" line 13) > (detailedDM handle-cache-miss line 13) > invoked from within > "_o179 handle-cache-miss 0 32770 -1" > ("eval" body line 1) > invoked from within > "eval $self handle-$code $args" > (procedure "_o179" line 2) > (McastProtocol upcall line 2) > invoked from within > "$protocols_($iface) upcall $code $source $group $iface" > (procedure "_o14" line 9) > (mrtObject upcall line 9) > invoked from within > "$mrtObject_ upcall $code $src $group $iface" > (procedure "_o10" line 3) > (Node new-group line 3) > invoked from within > "$node_ new-group $src $group $iface $code" > (procedure "_o13" line 3) > (Classifier/Multicast new-group line 3) > invoked from within > "_o13 new-group 0 32770 -1 cache-miss" > > -------end of error message------------ > > Any help is highly appreciated. > > cheers, > > Sarah > > -----Original Message----- > From: Shuqian YAN [mailto:syan@comm.toronto.edu] > Sent: Monday, March 15, 1999 12:45 PM > To: Liu, Sarah [CAR:0C21:EXCH] > Cc: 'ns-users@mash.CS.Berkeley.EDU' > Subject: Re: your mail > > > Hi, > > If I am not wrong, detailDM is not longer working under current version > of ns. > > As your error message indicates, there is no PruneTimeout value is > defined, so you probably need to define this value explicitly in the > simulation script, e.g. detailDM set PruneTimeout_ 0.5. > > Hope it helps, > > shuqian > > On Mon, 15 Mar 1999, Sarah Liu wrote: > > > Hi. everybody: > > > > When I tried to run the test file of detailedDM under > > ns-2.1b5/tcl/ex/newmcast, I got the following error messages: > > can't read "PruneTimeout": no such variable > > (Object set line 1) > > invoked from within > > "[$self info class] set PruneTimeout" > > (procedure "_o174" line 5) > > (Object next line 5) > > invoked from within > > "$self next $sim $node" > > (procedure "_o174" line 2) > > (detailedDM init line 2) > > invoked from within > > "_o174 init _o3 _o30" > > (Class create line 1) > > invoked from within > > "detailedDM create _o174 _o3 _o30" > > invoked from within > > "catch "$className create $o $args" msg" > > (procedure "new" line 3) > > invoked from within > > "new $mproto $self $node" > > (procedure "_o3" line 2) > > (Simulator mrtproto-iifs line 2) > > invoked from within > > "$self mrtproto-iifs $mproto $Node_($n) """ > > (procedure "_o3" line 12) > > (Simulator mrtproto line 12) > > invoked from within > > "$ns mrtproto $mproto {}" > > (file "detailedDM1.tcl" line 74) > > > > Thanks very much for any help that could solve this problem. > > > > Cheers, > > > > Sarah > > > > > > From vijay@ece.ucdavis.edu Mon Mar 15 21:43:25 1999 From: vijay@ece.ucdavis.edu (Vijay Ramachandran) Date: Mon, 15 Mar 1999 13:43:25 -0800 (PST) Subject: WFQ In-Reply-To: Message-ID: In which file is weighted fair queing implemented ? Vijay From danielf@isr.umd.edu Mon Mar 15 23:51:06 1999 From: danielf@isr.umd.edu (Daniel Friedman) Date: Mon, 15 Mar 1999 18:51:06 -0500 (EST) Subject: Classifier in an agent for simple link selection Message-ID: My ns version is 2.1b4a. Pretend I have a star topology of nodes, and from the central node I must send a packet to one of the leaf (non-central) nodes over the link from the central node to that leaf node. The decision of which leaf node should get the packet is made by an agent ("CentralAgent") I've built for the central node. I think I need to incorporate somehow a classifier in my CentralAgent. Looking at errmodel.{h,cc} and mac.{h,cc}, it appears I need a line something like this: class CentralAgent: public Agent { // ... Classifier *classifier_; // ... }; ===> Q1) I don't see, though, where/how this classifier is/should be actually created. (or is my approach incorrect?) Once I understand the answer to Q1, I think that I can use the install{ } instproc-like within my Tcl script to populate the slot table with the object names of the links to the leaf nodes, sort of like this: for {set i 0} {$i < $leaf_count} {incr i} { $centralnode install $i [$ns link $centralnode $leaf($i)] } ... after I've extended CentralAgent::command() to forward this 'install' command to the central agent's classifier_. ===> Q2) Does this sound right? Am I going about this correctly? Many, many thanks! --dan --------------------------------------------------------------------------- Daniel Friedman danielf@isr.umd.edu http://www.isr.umd.edu/~danielf From yuri@who.isi.edu Tue Mar 16 00:59:29 1999 From: yuri@who.isi.edu (Yuri Pryadkin) Date: 15 Mar 1999 16:59:29 -0800 Subject: Classifier in an agent for simple link selection In-Reply-To: Daniel Friedman's message of "Mon, 15 Mar 1999 18:51:06 -0500 (EST)" References: Message-ID: Daniel Friedman writes: > My ns version is 2.1b4a. > > Pretend I have a star topology of nodes, and from the central node I > must send a packet to one of the leaf (non-central) nodes over the link > from the central node to that leaf node. The decision of which leaf > node should get the packet is made by an agent ("CentralAgent") I've > built for the central node. I think I need to incorporate somehow a > classifier in my CentralAgent. Looking at errmodel.{h,cc} and > mac.{h,cc}, it appears I need a line something like this: > > class CentralAgent: public Agent { > // ... > Classifier *classifier_; > // ... > }; > > ===> Q1) I don't see, though, where/how this classifier is/should be > actually created. (or is my approach incorrect?) If you don't want to use the ns default routing, your approach is fine. You can either create it in C++ (in CentralAgent's constructor, or just declare it as "Classifier classifier_") or you can create and populate it in TCL and then provide a command to lookup and assign this pointer, just like it's done in errmodel. > > Once I understand the answer to Q1, I think that I can use the > install{ } instproc-like within my Tcl script to populate > the slot table with the object names of the links to the leaf nodes, > sort of like this: > > for {set i 0} {$i < $leaf_count} {incr i} { > $centralnode install $i [$ns link $centralnode $leaf($i)] > } > > ... after I've extended CentralAgent::command() to forward this > 'install' command to the central agent's classifier_. > > ===> Q2) Does this sound right? Am I going about this correctly? I think this should work. Probably you'll need to install a head-of-link instead of a link: $centralnode install $i [[$ns link $centralnode $leaf($i)] head] -Yuri From nakfourj@cse.msu.edu Tue Mar 16 01:56:42 1999 From: nakfourj@cse.msu.edu (Juana Elias Nakfour) Date: Mon, 15 Mar 1999 20:56:42 -0500 (EST) Subject: ns-2 at snapshot Message-ID: I just downloaded the latest version of ns from the snapshot and was trying to compile it. I got this error: ______________________________ In file include from tcp.h:39, from trace.cc:41: agent.h:43 ns-process.h:No such file or directory In file included from agent.h:44, from tcp.h:39, from trace.cc:41: app.h:44:ns-process.h: No such file or directory *** Error code 1 make: Fatal error: command failed for target 'trace.o' ___________________________________ both files agent.h and app.h include "ns-process.h" but I couldn't find this file anywhere. Really appreciate some help. Thanks in advance. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ Juana Nakfour | URL: www.cse.msu.edu/~nakfourj Graduate Assistant | Address: 201 N. Pennsylvania Computer Science and Engineering Dept. | Lansing, MI 48912. Michigan State University | Phone: (517) 487 9031 "F1 all the way.............." ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ From haoboy@isi.edu Tue Mar 16 02:46:07 1999 From: haoboy@isi.edu (Haobo Yu) Date: Mon, 15 Mar 1999 18:46:07 -0800 (PST) Subject: ns-2 at snapshot In-Reply-To: Message-ID: It was accidentally broken due to two missing files, and will be corrected in today's snapshot. - Haobo On Mon, 15 Mar 1999, Juana Elias Nakfour wrote: > I just downloaded the latest version of ns from the snapshot and was > trying to compile it. I got this error: > > ______________________________ > In file include from tcp.h:39, > from trace.cc:41: > agent.h:43 ns-process.h:No such file or directory > In file included from agent.h:44, > from tcp.h:39, > from trace.cc:41: > app.h:44:ns-process.h: No such file or directory > *** Error code 1 > make: Fatal error: command failed for target 'trace.o' > ___________________________________ > both files agent.h and app.h include "ns-process.h" > but I couldn't find this file anywhere. > > Really appreciate some help. Thanks in advance. > > ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ > Juana Nakfour | URL: www.cse.msu.edu/~nakfourj > Graduate Assistant | Address: 201 N. Pennsylvania > Computer Science and Engineering Dept. | Lansing, MI 48912. > Michigan State University | Phone: (517) 487 9031 > "F1 all the way.............." > ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ > > From lee-ss@ee.uwa.edu.au Tue Mar 16 03:37:37 1999 From: lee-ss@ee.uwa.edu.au (Sean Lee) Date: Tue, 16 Mar 1999 11:37:37 +0800 Subject: Anyone have source code for ELN? Message-ID: <36EDD201.15FCB560@ee.uwa.edu.au> Hi, I'm doing a project that uses ns-2 and I want to experiment on TCP using Explicit Loss Notification (ELN). I was wondering if anyone has any source code for a TCP agent that includes ELN or any other loss notification feedback. Any help is greatly appreciated. Thanks Sean From joumdane@my-dejanews.com Tue Mar 16 10:18:02 1999 From: joumdane@my-dejanews.com (Joumdane Abdelhamid) Date: Tue, 16 Mar 1999 10:18:02 -0000 Subject: CBT & ns Message-ID: Hello, I'm working on multicast project and I'm looking for an implementation of CBT (Core Based Tree) in NS. I searched the archive and I found some article talking about two file : ~tcl/test/mcast/BST.tcl ~tcl/ex/newmcast/mcast5.tcl But, unfortunately, both files doesn't exists on the version I downloaded 2.1b4. So, I wonder if anyone could five me a hand ? Thanks, Abdelhamid Joumdane joumdane@my-dejanews.com -----== Sent via Deja News, The Discussion Network ==----- http://www.dejanews.com/ Easy access to 50,000+ discussion forums From Pascal.Anelli@lip6.fr Tue Mar 16 10:51:45 1999 From: Pascal.Anelli@lip6.fr (Pascal Anelli) Date: Tue, 16 Mar 1999 11:51:45 +0100 (GMT+0100) Subject: Suggestion In-Reply-To: Message-ID: Hello, I've seen in scheduler.cc a test very useful --------------------------- void Scheduler::dispatch(Event* p, double t) { if (t < clock_) fprintf(stderr, "ns: scheduler going backwards in time from %f to %f.\n", clock_, t); .... ----------------- I think It will be also very useful to know when this event was schedule. I propose to add this line in schedule function. if (delay < 0) { fprintf(stderr, "ns: scheduler schedules negative delay (%f) at time %f .\n", delay, clock_); } best Regards ''' (o -) ---------------------------------oOO--(-)--OOo-------------------------- Pascal ANELLI UPMC | Tel : 33-1-44-27-71-29 LIP 6 : Laboratoire d'Informatique de Paris VI | Fax : 33-1-44-27-74-95 8, Rue du capitaine Scott | 75015 PARIS FRANCE | Bureau : C 654 _ __o o | ___\o_ _'\<,_ <|\ E-mail: Pascal.Anelli@lip6.fr ~~~~~~ (_)/_(_) _\ URL : http://www.lip6.fr/rp/~pan --------------------------------(__)------(__)-------------------------- From dkiwior@tasc.com Tue Mar 16 15:43:49 1999 From: dkiwior@tasc.com (Diane Kiwior) Date: Tue, 16 Mar 1999 10:43:49 -0500 Subject: Synchronization Message-ID: <36EE7C35.77A8B5F1@tasc.com> Hello ns-ers, To those of you who have experienced problems with flow synchronization and /or traffic phase effects in simulations, I would be interested in learning more from your experiences. Specifically, how was the problem recognized and what methods were used to solve the problem. Any information including pointers to documents, etc. would be appreciated. Thanks in advance for your help. Diane -- ///////////////////////////////////////////////////////////////// Diane Kiwior email: dkiwior@tasc.com TASC, Inc. 55 Walkers Brook Drive voice: 781.942.2000x2499 Reading, MA 01867 fax : 781.942.9507 ///////////////////////////////////////////////////////////////// From muellert@ifn.et.tu-dresden.de Tue Mar 16 16:46:23 1999 From: muellert@ifn.et.tu-dresden.de (Torsten Mueller) Date: Tue, 16 Mar 1999 17:46:23 +0100 Subject: Synchronization Message-ID: <199903161646.RAA19103@entcw7.et.tu-dresden.de> > To those of you who have experienced problems with flow synchronization > and /or traffic phase effects in simulations, I would be interested in > learning more from your experiences. Specifically, how was the problem > recognized and what methods were used to solve the problem. > > Any information including pointers to documents, etc. would be > appreciated. There is a good paper of Floyd and Jacobson "On Traffic Phase Effects in Packet-Switched Gateways" You can download it from: http://www-nrg.ee.lbl.gov/floyd/papers.html Regards, Torsten From yuri@who.isi.edu Tue Mar 16 18:00:18 1999 From: yuri@who.isi.edu (Yuri Pryadkin) Date: 16 Mar 1999 10:00:18 -0800 Subject: CBT & ns In-Reply-To: "Joumdane Abdelhamid"'s message of "Tue, 16 Mar 1999 10:18:02 -0000" References: Message-ID: Check them out from a daily snapshot or on-line CVS. "Joumdane Abdelhamid" writes: > Hello, > > I'm working on multicast project and I'm looking for an implementation of CBT (Core Based Tree) in NS. I searched the archive and I found some article talking about two file : > ~tcl/test/mcast/BST.tcl > ~tcl/ex/newmcast/mcast5.tcl > But, unfortunately, both files doesn't exists on the version I downloaded 2.1b4. So, I wonder if anyone could five me a hand ? > > Thanks, > Abdelhamid Joumdane > joumdane@my-dejanews.com > > > -----== Sent via Deja News, The Discussion Network ==----- > http://www.dejanews.com/ Easy access to 50,000+ discussion forums From softrel9@nortelnetworks.com Tue Mar 16 18:21:32 1999 From: softrel9@nortelnetworks.com (Sarah Liu) Date: Tue, 16 Mar 1999 13:21:32 -0500 Subject: CBT & ns Message-ID: <03E3E0690542D211A1490000F80836F43E45DC@zcard00f.ca.nortel.com> This message is in MIME format. Since your mail reader does not understand this format, some or all of this message may not be legible. ------_=_NextPart_000_01BE6FD9.D4B2BCE4 Content-Type: text/plain; charset="iso-8859-1" Hi, Joumdane: I have those two files of BST in my ns directionary. So I attched both file with the email. But I think maybe you still need to check the daily snapshot of ns for more examples. Hope it helps. cheers, Sarah -----Original Message----- From: Joumdane Abdelhamid [mailto:joumdane@my-dejanews.com] Sent: Tuesday, March 16, 1999 5:18 AM To: ns-users@mash.cs.berkeley.edu Subject: CBT & ns Hello, I'm working on multicast project and I'm looking for an implementation of CBT (Core Based Tree) in NS. I searched the archive and I found some article talking about two file : ~tcl/test/mcast/BST.tcl ~tcl/ex/newmcast/mcast5.tcl But, unfortunately, both files doesn't exists on the version I downloaded 2.1b4. So, I wonder if anyone could five me a hand ? Thanks, Abdelhamid Joumdane joumdane@my-dejanews.com -----== Sent via Deja News, The Discussion Network ==----- http://www.dejanews.com/ Easy access to 50,000+ discussion forums ------_=_NextPart_000_01BE6FD9.D4B2BCE4 Content-Type: application/octet-stream; name="mcast5.tcl" Content-Transfer-Encoding: quoted-printable Content-Disposition: attachment; filename="mcast5.tcl" ## Simple Bi-directional Shared Tree multicast test=0A= # on a binary tree=0A= =0A= set ns [new Simulator -multicast on]=0A= =0A= set f [open out-mc5.tr w]=0A= $ns trace-all $f=0A= set nf [open out-mc5.nam w]=0A= $ns namtrace-all $nf=0A= =0A= set degree 2 ;#binary=0A= set depth 4 ;=0A= set n(0) [$ns node]=0A= set nidx 1=0A= for {set l 1} {$l<$depth} {incr l} {=0A= set nodes_at_level [expr pow($degree, $l)]=0A= for {set k 1} {$k <=3D $nodes_at_level} {incr k} {=0A= #create new node=0A= eval set n($nidx) [$ns node]=0A= #link it to the parent=0A= set p [expr ($nidx - 1)/$degree]=0A= $ns duplex-link $n($p) $n($nidx) 1.5Mb [expr $depth*10/pow(2,$l)]ms = DropTail=0A= #orient the link=0A= # parent p has children [$p*$degree+1..($p+1)*$degree]=0A= # so middle point is $p*$degree+($degree+1)/2=0A= set mp [expr $p*$degree + ($degree+1)/2.0]=0A= if {$nidx < $mp} {=0A= set orientation "left-down"=0A= } elseif {$nidx > $mp } {=0A= set orientation "right-down"=0A= } else {=0A= set orientation "down"=0A= }=0A= $ns duplex-link-op $n($p) $n($nidx) orient $orientation=0A= # $ns duplex-link-op $n($p) $n($nidx) queuePos [expr 1/pow($degree, = $l)]=0A= =0A= #attach senders=0A= set cbr($nidx) [new Agent/CBR]=0A= $cbr($nidx) set dst_ 0x8003=0A= $cbr($nidx) set class_ [expr 100 + $nidx]=0A= $cbr($nidx) set interval_ 20ms=0A= $ns attach-agent $n($nidx) $cbr($nidx)=0A= =0A= #attach receivers=0A= set rcvr($nidx) [new Agent/Null]=0A= $ns attach-agent $n($nidx) $rcvr($nidx)=0A= =0A= incr nidx=0A= }=0A= }=0A= =0A= ### Start multicast configuration: =0A= # source ~/vint/ns-main/tcl/mcast/BST.tcl=0A= source ../../mcast/BST.tcl=0A= =0A= BST set RP_([expr 0x8003]) $n(0)=0A= =0A= =0A= set mproto BST=0A= set mrthandle [$ns mrtproto $mproto {}]=0A= ### End of multicast configuration=0A= =0A= $ns color 103 Navy ;#cbrs=0A= $ns color 105 BlueViolet=0A= =0A= $ns color 30 purple ;#grafts=0A= $ns color 31 green ;#prunes=0A= =0A= $n(0) color blue ;#RP=0A= =0A= $n(0) color Navy=0A= $n(3) color BlueViolet=0A= =0A= $ns at 0 "$cbr(3) start"=0A= $ns at 0.05 "$cbr(5) start"=0A= $ns at 0.2 "$n(4) join-group $rcvr(4) 0x8003"=0A= $ns at 0.28 "$n(4) join-group $rcvr(4) 0x8003"=0A= $ns at 0.3 "$n(6) join-group $rcvr(6) 0x8003"=0A= $ns at 0.4 "$n(4) leave-group $rcvr(4) 0x8003"=0A= $ns at 0.5 "$n(6) leave-group $rcvr(6) 0x8003"=0A= $ns at 0.55 "finish"=0A= =0A= proc finish {} {=0A= global ns=0A= $ns flush-trace=0A= =0A= puts "running nam... "=0A= exec nam out-mc5 &=0A= exit 0=0A= }=0A= =0A= $ns run=0A= =0A= =0A= ------_=_NextPart_000_01BE6FD9.D4B2BCE4 Content-Type: application/octet-stream; name="BST.tcl" Content-Transfer-Encoding: quoted-printable Content-Disposition: attachment; filename="BST.tcl" #=0A= # tcl/mcast/BST.tcl=0A= #=0A= #=0A= # Copyright (C) 1998 by USC/ISI=0A= # All rights reserved. =0A= # =0A= # Redistribution and use in source and binary forms are permitted=0A= # provided that the above copyright notice and this paragraph are=0A= # duplicated in all such forms and that any documentation, = advertising=0A= # materials, and other materials related to such distribution and = use=0A= # acknowledge that the software was developed by the University of=0A= # Southern California, Information Sciences Institute. The name of = the=0A= # University may not be used to endorse or promote products derived = from=0A= # this software without specific prior written permission.=0A= # =0A= # THIS SOFTWARE IS PROVIDED "AS IS" AND WITHOUT ANY EXPRESS OR = IMPLIED=0A= # WARRANTIES, INCLUDING, WITHOUT LIMITATION, THE IMPLIED WARRANTIES = OF=0A= # MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE.=0A= # =0A= =0A= ###############=0A= # Implementation of a simple shared bi-directional tree protocol. = No=0A= # timers. Nodes send grafts/prunes toward the RP to join/leave the=0A= # group. The user needs to set two protocol variables: =0A= #=0A= # "ST set RP_($group) $node" - indicates that $node =0A= # acts as an RP for the $group=0A= =0A= Class BST -superclass McastProtocol=0A= =0A= BST instproc init { sim node } {=0A= $self instvar mctrl_ oiflist_=0A= set mctrl_ [new Agent/Mcast/Control $self]=0A= $node attach $mctrl_=0A= set oiflist_ ""=0A= =0A= $self next $sim $node=0A= }=0A= =0A= BST instproc join-group { group {src "x"} } {=0A= $self instvar node_ ns_=0A= BST instvar RP_=0A= =0A= set r [$node_ getReps "x" $group]=0A= =0A= if {$r =3D=3D ""} {=0A= set iif [$self from-node-iface $RP_($group)]=0A= $self dbg "********* join: adding "=0A= $node_ add-mfc "x" $group $iif ""=0A= set r [$node_ getReps "x" $group]=0A= }=0A= if { ![$r is-active] } {=0A= $self send-ctrl "graft" $RP_($group) $group=0A= }=0A= $self next $group ; #annotate=0A= }=0A= =0A= BST instproc leave-group { group {src "x"} } {=0A= BST instvar RP_=0A= $self next $group=0A= =0A= $self instvar node_=0A= set r [$node_ getReps "x" $group]=0A= if ![$r is-active] {=0A= $self send-ctrl "prune" $RP_($group) $group=0A= }=0A= }=0A= =0A= BST instproc handle-wrong-iif { srcID group iface } {=0A= $self instvar node_ oiflist_=0A= BST instvar RP_=0A= =0A= $self dbg "BST: wrong iif $iface, src $srcID, grp $group"=0A= #debug 1=0A= set rep [$node_ getReps "x" $group]=0A= =0A= $node_ add-mfc "x" $group $iface $oiflist_=0A= set iif [$node_ lookup-iface "x" $group]=0A= if { $iface >=3D 0 } {=0A= set oif [$node_ iif2oif $iface]=0A= if { $node_ !=3D $RP_($group) } {=0A= set rpfiif [$self from-node-iface $RP_($group)]=0A= } else {=0A= puts " iface is $iface, the node is the RP"=0A= set rpfiif ""=0A= }=0A= if { $iface =3D=3D $rpfiif } {=0A= # forward direction: disable oif to RP=0A= $rep disable [$node_ iif2oif $rpfiif]=0A= } else {=0A= # reverse direction: disable where it came from=0A= $rep disable $oif=0A= if { $node_ !=3D $RP_($group) } {=0A= $rep enable [$node_ iif2oif $rpfiif]=0A= }=0A= }=0A= }=0A= $node_ change-iface "x" $group $iif $iface=0A= return 1 ;#classify packet again=0A= }=0A= =0A= BST instproc handle-cache-miss { srcID group iface } {=0A= $self instvar node_ ns_ oiflist_=0A= BST instvar RP_=0A= =0A= if { [$node_ getReps "x" $group] !=3D "" } {=0A= debug 1=0A= }=0A= $self dbg "handle-cache-miss, src: $srcID, group: $group, iface: = $iface"=0A= if {$node_ !=3D $RP_($group) } {=0A= set rpfiif [$self from-node-iface $RP_($group)]=0A= if { $rpfiif !=3D "?" } {=0A= set rpfoif [$node_ iif2oif $rpfiif]=0A= } else {=0A= set rpfoif ""=0A= }=0A= } else {=0A= set rpfoif ""=0A= }=0A= puts "rpfoif=3D $rpfoif"=0A= $node_ add-mfc "x" $group $iface $rpfoif=0A= $self dbg "********* miss: adding "=0A= return 1 ;# classify the packet again.=0A= }=0A= =0A= BST instproc drop { replicator src dst iface} {=0A= $self instvar node_ ns_=0A= BST instvar RP_=0A= =0A= # No downstream listeners=0A= # Send a prune back toward the RP=0A= $self dbg "drops src: $src, dst: $dst, replicator: [$replicator set = srcID_]"=0A= =0A= if {$iface >=3D 0} {=0A= # so, this packet came from outside of the node=0A= $self send-ctrl "prune" $RP_($dst) $dst=0A= }=0A= }=0A= =0A= BST instproc recv-prune { from src group iface} {=0A= $self instvar node_ ns_ oiflist_ =0A= BST instvar RP_ =0A= $self dbg "received a prune from: $from, src: $src, grp: $group, if: = $iface"=0A= =0A= set rep [$node_ getReps "x" $group]=0A= if {$rep !=3D ""} {=0A= set oif [$node_ iif2oif $iface]=0A= set idx [lsearch $oiflist_ $oif]=0A= if { $idx >=3D 0 } {=0A= set oiflist_ [lreplace $oiflist_ $idx $idx]=0A= $rep disable $oif=0A= if { $oiflist_ =3D=3D "" } {=0A= # propagate=0A= $self send-ctrl "prune" $RP_($group) $group=0A= }=0A= }=0A= }=0A= }=0A= =0A= BST instproc recv-graft { from to group iface } {=0A= $self instvar node_ ns_ oiflist_=0A= BST instvar RP_=0A= =0A= $self dbg "received a graft from: $from, to: $to, if: $iface"=0A= # if {[$node_ id]=3D=3D0} {debug 1}=0A= set oif [$node_ iif2oif $iface]=0A= =0A= if { $oiflist_ =3D=3D "" } {=0A= # propagate=0A= $self send-ctrl "graft" $RP_($group) $group=0A= }=0A= if { [lsearch $oiflist_ $oif] < 0 } {=0A= lappend oiflist_ $oif=0A= if { [$node_ lookup-iface "x" $group] !=3D $iface } {=0A= set rep [$node_ getReps "x" $group]=0A= $rep insert $oif=0A= }=0A= }=0A= $self dbg "oiflist: $oiflist_"=0A= }=0A= =0A= #=0A= # send a graft/prune for src/group up the RPF tree towards dst=0A= #=0A= BST instproc send-ctrl { which dst group } {=0A= $self instvar mctrl_ ns_ node_=0A= =0A= if {$node_ !=3D $dst} {=0A= set nbr [$node_ rpf-nbr $dst]=0A= $ns_ simplex-connect $mctrl_ \=0A= [[[$nbr getArbiter] getType [$self info class]] set mctrl_]=0A= if { $which =3D=3D "prune" } {=0A= $mctrl_ set class_ 30=0A= } else {=0A= $mctrl_ set class_ 31=0A= } =0A= $mctrl_ send $which [$node_ id] -1 $group=0A= }=0A= }=0A= =0A= ################ Helpers=0A= =0A= BST instproc dbg arg {=0A= $self instvar ns_ node_=0A= puts [format "At %.4f : node [$node_ id] $arg" [$ns_ now]]=0A= }=0A= =0A= =0A= =0A= =0A= ------_=_NextPart_000_01BE6FD9.D4B2BCE4-- From nakfourj@cse.msu.edu Tue Mar 16 18:31:39 1999 From: nakfourj@cse.msu.edu (Juana Elias Nakfour) Date: Tue, 16 Mar 1999 13:31:39 -0500 (EST) Subject: ns-2.1b5 Message-ID: I am trying to download the new ns-2 version 5 from the changes.html page but the link there is broken. Is the snapshot the same? Thanks in advance. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ Juana Nakfour | URL: www.cse.msu.edu/~nakfourj Graduate Assistant | Address: 201 N. Pennsylvania Computer Science and Engineering Dept. | Lansing, MI 48912. Michigan State University | Phone: (517) 487 9031 "F1 all the way.............." ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ From jbyang@jupiter.nal.utoronto.ca Tue Mar 16 20:26:11 1999 From: jbyang@jupiter.nal.utoronto.ca (Jiangbin Yang (for ECE1545S)) Date: Tue, 16 Mar 1999 15:26:11 -0500 (EST) Subject: CBQ setup Message-ID: Hello, Can anyone send me any scripts on setting up CBQ properly? Or any comments on this? Thanks, Jiangbin Yang univ. of toronto From hyeong@ecn.purdue.edu Tue Mar 16 20:50:54 1999 From: hyeong@ecn.purdue.edu (Hyeong Soo Chang) Date: Tue, 16 Mar 1999 15:50:54 -0500 (EST) Subject: Internet traffic archive Message-ID: <199903162050.PAA28154@slapshot.ecn.purdue.edu> Hello.. I think there is a problem with the internet traffic archive; http://ita.ee.lbl.gov/index.html Any idea? I cannot access the site. I want to use the actual traffic for my simulation. Any help is appreciated. H.S. Chang From sukeshgg@caip.rutgers.edu Tue Mar 16 21:19:08 1999 From: sukeshgg@caip.rutgers.edu (Sukesh Garg) Date: Tue, 16 Mar 1999 16:19:08 -0500 (EST) Subject: CBQ setup In-Reply-To: Message-ID: Hi , If you have the ns source, go to tcl/test you have a variety of test-suites for different queuing disciplines including CBQ. Sukesh From sputha@ee.lsu.edu Tue Mar 16 21:37:33 1999 From: sputha@ee.lsu.edu (Puthalapat Satish Kumar Reddy) Date: Tue, 16 Mar 1999 15:37:33 -0600 (CST) Subject: error message Message-ID: Hi, can anyone tell me the reason for this error message?? invalid command name "Agent/TcpApp/FtpServer" while executing "Agent/TcpApp/FtpServer create _o140 " invoked from within "if [catch "$className create $o $args" msg] { if [string match "__FAILED_SHADOW_OBJECT_" $msg] { delete $o return "" } global errorInfo error "class $ ..." (procedure "new" line 3) invoked from within "new Agent/TcpApp/FtpServer" invoked from within "set sftp [new Agent/TcpApp/FtpServer]..." ("for" body line 3) invoked from within "for {set j 2} {$j <= 2} {incr j 1} { set i [expr $j+4] set sftp [new Agent/TcpApp/FtpServer] $sftp file_size $filesize build_ftpclient [set n$j] [ ..." ("for" body line 2) invoked from within "for {set k 1} {$k <= 1} {incr k 1} { for {set j 2} {$j <= 2} {incr j 1} { set i [expr $j+4] set sftp [new Agent/TcpApp/FtpServer] $sftp file_si ..." (file "test_tcl.tcl" line 259) Thank you. satish @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ PUTHALAPAT SATISH KUMAR REDDY DEGREE: MS MAJOR: COMPUTER ENGINEERING HOME ADDRESS: HOME PHONE NUMBER: 600 E.ROOSEVELT STREET (504) 344-8873 BATON ROUGE LOUISIANA 70802 E-MAIL ADDRESSES: sputha@ee.lsu.edu sputha1@tiger.lsu.edu ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ From wu15@ecn.purdue.edu Tue Mar 16 23:39:54 1999 From: wu15@ecn.purdue.edu (Gang Wu) Date: Tue, 16 Mar 1999 18:39:54 -0500 (EST) Subject: Using external traffic data Message-ID: HI, all, I am going to run a few simulations using some collected real traffic data. But I am not sure how to interface my data file with ns. Someone please help on this! Or, if you have any idea which section the ns documentation is relevent, please reply. Thank you in advance! ------------ Gang Wu School of ECE Purdue University West Lafayette, Indiana 47905 Office: EE Building 51 Phone: +1 765 494-1744 From salehi@ISI.EDU Wed Mar 17 01:22:11 1999 From: salehi@ISI.EDU (Nader Salehi) Date: Tue, 16 Mar 1999 17:22:11 -0800 (PST) Subject: NS 2.1b5 and NAM 1.0a7 and NS-ALLINONE 2.1b5 Have Now Been Released Message-ID: <199903170122.RAA16395@joy.isi.edu> What is NS? ---------- NS is a discrete event simulator targeted at networking research. Ns provides substantial support for simulation of TCP, routing, and multicast protocols. NS began as a variant of the REAL network simulator in 1989 and has evolved substantially over the past few years. The ns development effort is now an ongoing collaboration with the VINT project. What is Nam? ---------- Nam is a Tcl/TK based animation tool for viewing network simulation traces and real world packet traces. It supports topology layout, packet level animation, and various data inspection tools. Nam began at LBL. It has evolved substantially over the past few years. The nam development effort is now an ongoing collaboration with the VINT project. WINDOWS USES: Currently nam does NOT work with Tcl/TK 8.0.5 on Windows 95/98/NT. If you want to build nam there, please use the Tcl/TK 8.0p2. In order to build a statically linked nam on the Windows platforms, you need to download a patched version of Tcl/TK 8.0p2 from http://mash.cs.berkeley.edu/dist/, and follow the instructions in their respective makefile.vc. What is NS-ALLINONE? ----------- Ns-allinone is a package which contains required components and some of optional components used in running ns. The package contains an "install" script to automatically configure, compile and install these components. After downloading, run the install script. If you haven't installed ns before and want to quickly try ns out, ns-allinone may be easier than getting all the pieces by hand. Currently the package contains: Tcl release 8.0.4 (required component) Tk release 8.0.4 (required component) Otcl release 1.0a4 (required component) TclCL release 1.0b8 (required component) Ns release 2.1b5 (required component) Nam release 1.0a7 (optional component) Zlib version 1.1.3 (optional component, required should Nam be used) Xgraph version 12 (optional component) CWeb version 3.4g (optional component) SGB version 1.0 (?) (optional component, builds sgblib for all UNIX type platforms) Gt-itm gt-itm & sgb2ns 1.1(optional component) What is New in NS 2.1b5? ------------------ Some of the new features in this version include: - Modified implementation of wired LANs based on CMU 802.3 code - Add mobileIP support (porting from Sun) with an example called miptest.tcl - Added a directory called `indep-utils' which contains proxy trace converteres and CMU's mobile scenario generator. - Add a unique type int64_t for 64-bit integers. Now it doesn't check for quad_t or "long long" in different platforms. Requires new tclcl. - Changed ns configure to support tcldebug v1.9. Upgraded NS and NAM config.guess and config.sub. - Integrated recent change on StarBurst MFTP code from Christoph Haenle. - Added support for Mobile networking in current version of ns; Mostly cmu's version of mobility implementation -- integrated into ns. - Re-arranged some of the mftp/StarBurst code. - added mix-mode, algorithmic routing, and virtual classifier test suite changed McastMonitor structure - Finished reorganization of multicast internal code which should be considered stable at this point. - Broken functionalities, such as detailedDM and PIM-DM, were removed. - Numerous bug fixes! What is new in NAM 1.0a7? -------------------- New features in this version include: - An Editor is added to nam to allow the user to interactively edit the simulation topology in a WYSIWYG style. Current new features include: Create simulation topology Edit Object's properties in the topology Node: Color, Size, Label, Agents Link: Color, Bandwidth, Delay Add/Delete node and link object Export the result to a tcl file (*.nstcl) which can be executed under ns Save as an editable nam file (*.enam) - Nam will now play compressed files (files ending in .Z or .gz, if nam is built with -DHAVE_ZLIB) and from pipes (use the filename ``-''). Autoconf support for zlib is still needed. Compressed files play very slowly backwards. Playing from a pipe buffers trace data in a file in /tmp. Autoconf support for zlib is added. self-adjusted timeslider works with zlib support. - Fixed WIN32 incompatibilities in nam_stream.{cc,h}. NS 2.1b5 can be downloaded from and NAM 1.0a7 can be downloaded from and NS-ALLINONE 2.1b5 can be downloaded from and Thanks, Nader Salehi USC/ISI From sandeep@engr.orst.edu Wed Mar 17 01:34:42 1999 From: sandeep@engr.orst.edu (Agarwal Sandeep) Date: Tue, 16 Mar 1999 17:34:42 -0800 Subject: 802.11 Message-ID: <36EF06B1.BD837B0@engr.orst.edu> --------------D4B37037C062EBA84B8235AB Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Hi Can you please tell me how to get the code for 802.11 mac protocol in ns2. I want to review it because I want to implement another mac protocol using some of the functions available in the code for 802.11. Thanks. -- Sandeep Agarwal --------------D4B37037C062EBA84B8235AB Content-Type: text/html; charset=us-ascii Content-Transfer-Encoding: 7bit Hi
Can you please tell me how to get the code for 802.11 mac protocol in ns2.
I want to review it because I want to implement another mac protocol using some of the functions available in the code for 802.11.
Thanks.
-- 
Sandeep Agarwal

  --------------D4B37037C062EBA84B8235AB-- From yaxu@ISI.EDU Wed Mar 17 02:30:36 1999 From: yaxu@ISI.EDU (Ya Xu) Date: Tue, 16 Mar 1999 18:30:36 -0800 (PST) Subject: 802.11 In-Reply-To: <36EF06B1.BD837B0@engr.orst.edu> Message-ID: It is included in the current ns-2.1b5 release. check out mac-802_11.(cc,h). -Ya On Tue, 16 Mar 1999, Agarwal Sandeep wrote: > Hi > Can you please tell me how to get the code for 802.11 mac protocol in > ns2. > I want to review it because I want to implement another mac protocol > using some of the functions available in the code for 802.11. > Thanks. > > -- > Sandeep Agarwal > > > From wu15@ecn.purdue.edu Wed Mar 17 03:01:16 1999 From: wu15@ecn.purdue.edu (Gang Wu) Date: Tue, 16 Mar 1999 22:01:16 -0500 (EST) Subject: Tracefile format Message-ID: Hi, Does anybody know the format of external trace files, like the file "example-trace" in /ns-allinone-2.1b4/ns-2/tcl/ex/? Thanks a lot! ------------ Gang Wu School of ECE Purdue University West Lafayette, Indiana 47905 Office: EE Building 51 Phone: +1 765 494-1744 From breslau@research.att.com Wed Mar 17 05:05:33 1999 From: breslau@research.att.com (Lee Breslau) Date: Wed, 17 Mar 1999 00:05:33 -0500 (EST) Subject: Tracefile format Message-ID: <199903170505.AAA09803@windsor.research.att.com> > > Hi, > > Does anybody know the format of external trace files, like the file > "example-trace" in /ns-allinone-2.1b4/ns-2/tcl/ex/? > > Thanks a lot! > 2 32-bit unsigned integers. The first is the time until the next packet is generated, in microseconds. The second is the length of the packet in bytes. Lee From sputha@ee.lsu.edu Wed Mar 17 05:21:26 1999 From: sputha@ee.lsu.edu (Puthalapat Satish Kumar Reddy) Date: Tue, 16 Mar 1999 23:21:26 -0600 (CST) Subject: rfc 2415 Message-ID: Hi all, Can anyone help me run a simulation on " Effects of increasing TCP initial window."???????? Is there any code out there which i can use??? Any help will be greatly appreciated. satish @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ PUTHALAPAT SATISH KUMAR REDDY DEGREE: MS MAJOR: COMPUTER ENGINEERING HOME ADDRESS: HOME PHONE NUMBER: 600 E.ROOSEVELT STREET (504) 344-8873 BATON ROUGE LOUISIANA 70802 E-MAIL ADDRESSES: sputha@ee.lsu.edu sputha1@tiger.lsu.edu ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ From joumdane@my-dejanews.com Wed Mar 17 13:43:15 1999 From: joumdane@my-dejanews.com (Joumdane Abdelhamid) Date: Wed, 17 Mar 1999 13:43:15 -0000 Subject: Multicast Routing & ns Message-ID: Hi Lazraq, You can find examples for PIM and CBT in the following files : --> CBT => BST.tcl [ns-2/tcl/mcast/ in 2.1b5 release] --> PIM => pim*.tcl files [ns-2/tcl/ex/newmcast in 2.1b4] If you can't find them I attached a tar-gzipped file directory which countains both of them and a lot of others. Abdelhamid Joumdane -- On Tue, 17 Mar 1998 11:37:00 sanaa wrote: >ubscribe ns-announce lazraq@emi.ac.ma >I have a project research about multicast routing protocols and i have >to implement PIM and CBT in 'ns' , >I didn't find any examples for code about multicast in 'ns library' , >Anyone can help me ? > >Lazrak Mohamed >Email : lazraq@emi.ac.ma > > -----== Sent via Deja News, The Discussion Network ==----- http://www.dejanews.com/ Easy access to 50,000+ discussion forums From sputha@ee.lsu.edu Wed Mar 17 14:42:37 1999 From: sputha@ee.lsu.edu (Puthalapat Satish Kumar Reddy) Date: Wed, 17 Mar 1999 08:42:37 -0600 (CST) Subject: error message Message-ID: Hi everyone, can anyone tell me why i am getting this error message??? i am using ns-2. _o6: unable to dispatch method shape while executing "[set n${i}] shape circle" ("foreach" body line 4) invoked from within "foreach i "0 1 2 3 4 5 6 7 8 9" { global n$i set n$i [$ns node] [set n${i}] shape circle [set n${i}] color green }" thank u. satish @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ PUTHALAPAT SATISH KUMAR REDDY DEGREE: MS MAJOR: COMPUTER ENGINEERING HOME ADDRESS: HOME PHONE NUMBER: 600 E.ROOSEVELT STREET (504) 344-8873 BATON ROUGE LOUISIANA 70802 E-MAIL ADDRESSES: sputha@ee.lsu.edu sputha1@tiger.lsu.edu ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ From blazevic@lrc.di.epfl.ch Wed Mar 17 15:00:37 1999 From: blazevic@lrc.di.epfl.ch (Ljubica Blazevic) Date: Wed, 17 Mar 1999 16:00:37 +0100 Subject: PIM-SM Message-ID: <199903171500.QAA28870@lrcsun15.epfl.ch> Hi, In ns2.1b5 release there is no longer supporting the pim sparse mode simulator (under ~ns/tcl/pim)? Still there are examples in tcl/ex/newmcast that don't work. Is there a plan to port over pim to current ns release in the near future? Thank you, Ljubica From wu15@ecn.purdue.edu Wed Mar 17 15:41:53 1999 From: wu15@ecn.purdue.edu (Gang Wu) Date: Wed, 17 Mar 1999 10:41:53 -0500 (EST) Subject: Tracefile format In-Reply-To: <199903170505.AAA09803@windsor.research.att.com> Message-ID: On Wed, 17 Mar 1999, Lee Breslau wrote: > 2 32-bit unsigned integers. The first is the time until the next > packet is generated, in microseconds. The second is the length > of the packet in bytes. > > Lee > > Thanks, Lee! I had a look at the example file example-trace came with the ns package, but it looks to me it is a binary file, do you know why? Also, I am wondering what format is used to separate these two integets, a simple space or something else? Thank you! ------------ Gang Wu School of ECE Purdue University West Lafayette, Indiana 47905 Office: EE Building 51 Phone: +1 765 494-1744 From yuri@who.isi.edu Wed Mar 17 16:49:53 1999 From: yuri@who.isi.edu (Yuri Pryadkin) Date: 17 Mar 1999 08:49:53 -0800 Subject: PIM-SM In-Reply-To: Ljubica Blazevic's message of "Wed, 17 Mar 1999 16:00:37 +0100" References: <199903171500.QAA28870@lrcsun15.epfl.ch> Message-ID: Ljubica Blazevic writes: > Hi, > > In ns2.1b5 release there is no longer supporting the pim sparse mode > simulator (under ~ns/tcl/pim)? Still there are examples in tcl/ex/newmcast > that don't work. Is there a plan to port over pim to current ns > release in the near future? Currently there are no plans to do so. You can try to use a simple shared tree mode ST.tcl. See ex/newmcast/mcast4.tcl for example, that should work. -Yuri From SVA0392@tntech.edu Wed Mar 17 17:02:02 1999 From: SVA0392@tntech.edu (SVA0392) Date: Wed, 17 Mar 1999 11:02:02 -0600 Subject: ns Installation problems--Need Help Message-ID: <000101be7097$e12da470$13059595@bn207-19.pclab.tntech.edu> Hi, I downloaded ns and I ran the following ./configure make It gives me the following error.Please kindly help me ------------------------------ Tcl.o(.text+0x728): undefined reference to `__eh_pc' /usr/local/lib/libtclcl.a(Tcl.o): In function `TclObject::bind(char const *, double *)': Tcl.o(.text+0x12b8): undefined reference to `__eh_pc' /usr/local/lib/libtclcl.a(Tcl.o): In function `TclObject::bind_bw(char const *, double *)': Tcl.o(.text+0x1368): undefined reference to `__eh_pc' /usr/local/lib/libtclcl.a(Tcl.o): In function `TclObject::bind_time(char const *, double *)': Tcl.o(.text+0x1418): undefined reference to `__eh_pc' /usr/local/lib/libtclcl.a(Tcl.o): In function `TclObject::bind(char const *, int *)': Tcl.o(.text+0x14b8): undefined reference to `__eh_pc' /usr/local/lib/libtclcl.a(Tcl.o)(.text+0x1568): more undefined references to `__eh_pc' follow collect2: ld returned 1 exit status make: *** [ns] Error 1 -------------------------------------------- Regards, Syam From breslau@research.att.com Wed Mar 17 18:02:52 1999 From: breslau@research.att.com (Lee Breslau) Date: Wed, 17 Mar 1999 13:02:52 -0500 Subject: Tracefile format In-Reply-To: Your message of "Wed, 17 Mar 1999 10:41:53 EST." Message-ID: <199903171802.NAA13274@windsor.research.att.com> > > Thanks, Lee! I had a look at the example file example-trace came with the > ns package, but it looks to me it is a binary file, do you know why? Because that is how I wrote it. In retrospect, it was not a good idea. It trades off usability for potentially saving some disk space. > Also, I am wondering what format is used to separate these two integets, a > simple space or something else? Thank you! > There is nothing separating the two integers. They are fixed length fields in binary format. Lee From softrel9@nortelnetworks.com Wed Mar 17 20:18:21 1999 From: softrel9@nortelnetworks.com (Sarah Liu) Date: Wed, 17 Mar 1999 14:18:21 -0600 Subject: FW: PIM code in ns Message-ID: <03E3E0690542D211A1490000F80836F43E45E2@zcard00f.ca.nortel.com> > -----Original Message----- > From: Liu, Sarah [CAR:0C21:EXCH] > Sent: Tuesday, March 16, 1999 4:14 PM > To: 'ahelmy@catarina.usc.edu' > Cc: 'huang@catarina.usc.edu' > Subject: > > Hi, Dr. Helmy: > > I read the source code of PIM-SM provided by ns-2.1b5 (which is not > supported anymore). I am not quite clear about the functionality of > pim-mrt.tcl and pim-vifs.tcl. Also I am not understand the class Ent, > WCEnt and SGEnt. Why you implemented those procedures such as add-oif and > getType instead of using them in ns-mcast.tcl and McastProto.tcl? (same > question for the add-oif and del-oif procedures in pim-vifs.tcl) For the > MRT manipulation, is that to provide the bootstrap mechanism to choose the > RP dynamically? ... Anyway, just try to understand the code since it is > the only code that I can find for PIM. > > Many thanks for your help and time. > > cheers, > > Sarah > > > -------------------------------------------------------------------------- > ---------------------------------- > Sarah Xiaohui Liu, 613-765-3203 o__ o~__ > Email: softrel9@nortelnetworks.com _,>/_ _,>/_ > u1452573@csi.uottawa.ca (*) (*) (*) > (*) > Mail Stop: 0C21, Nortel Networks Corp. > > -------------------------------------------------------------------------- > ---------------------------------- > From Lloyd Wood Wed Mar 17 20:41:22 1999 From: Lloyd Wood (Lloyd Wood) Date: Wed, 17 Mar 1999 20:41:22 +0000 (GMT) Subject: PIM-SM In-Reply-To: Message-ID: On 17 Mar 1999, Yuri Pryadkin wrote: > Ljubica Blazevic writes: > > > In ns2.1b5 release there is no longer supporting the pim sparse mode > > simulator (under ~ns/tcl/pim)? Still there are examples in tcl/ex/newmcast > > that don't work. Is there a plan to port over pim to current ns > > release in the near future? > > Currently there are no plans to do so. http://www-mash.cs.berkeley.edu/ns/mcast.html "However, if you are looking at multicast routing, or are using PIM as your multicast routing protocol, then these changes could affect you adversely. [..] In particular, we do not plan to upgrade the PIM implementation in ns at this time." Even so, I've still had the refrain "You killed PIM-SM![*] You bastards!" running through my head all day. Back to fiddling with centralised multicast... L. is thoroughly expecting PIM-SM to pop back to life in the next release unharmed, but then he's been watching way too much 'South Park'. [*] okay, and detailedDM and PIM-DM and other unspecified stuff(?), but all that doesn't scan with "Kenny"... "Broken functionalities, such as detailedDM and PIM-DM, were removed." > You can try to use a simple shared tree mode ST.tcl. See > ex/newmcast/mcast4.tcl for example, that should work. > > -Yuri > PGP From danielf@isr.umd.edu Wed Mar 17 22:41:16 1999 From: danielf@isr.umd.edu (Daniel Friedman) Date: Wed, 17 Mar 1999 17:41:16 -0500 (EST) Subject: How to attach a replicator? Message-ID: How do I attach a replicator to.. 1) an agent in a node, and 2) a node with no explicitly-attached agents? Then, .. 3) Once I achieve #2, how do I populate the slot_ table as I like within Tcl? 4) For at least #1 and #2, does it make a difference if I enable multicasting in the simulator? Or, must I enable it? 4) My understanding is that ns doesn't allow parallel links. Once I achieve #1, can I have a link from the node 1's agent to node 2, and also a link from the replicator in node 1 [attached to node 1's agent] to node 2? Thank you, --dan From hdan@dislab.nju.edu.cn Thu Mar 18 11:43:14 1999 From: hdan@dislab.nju.edu.cn (He Dan) Date: Thu, 18 Mar 1999 19:43:14 +0800 Subject: A simple question? Message-ID: <36F0E6D2.BE14C382@dislab.nju.edu.cn> Hi, Forks: Who can help me how to deal with tcp trace file for drawing thoughout-time graph? Or send me a simple code for TCP performance? cheers dan From hdan@dislab.nju.edu.cn Thu Mar 18 11:47:56 1999 From: hdan@dislab.nju.edu.cn (He Dan) Date: Thu, 18 Mar 1999 19:47:56 +0800 Subject: how to repeat trial? Message-ID: <36F0E7EC.AC641BA2@dislab.nju.edu.cn> I want to do many trials of ex/simple.tcl. Write a shell or TCL script? I write some lines as follows: for {set i 0} {$i<10} {incr i} { exec ns simple.tcl .. .. } It is only once to be run. How i can do? funny Dan From wu15@ecn.purdue.edu Thu Mar 18 04:14:35 1999 From: wu15@ecn.purdue.edu (Gang Wu) Date: Wed, 17 Mar 1999 23:14:35 -0500 (EST) Subject: how to repeat trial? In-Reply-To: <36F0E7EC.AC641BA2@dislab.nju.edu.cn> Message-ID: On Thu, 18 Mar 1999, He Dan wrote: > I want to do many trials of ex/simple.tcl. > Write a shell or TCL script? > > I write some lines as follows: > > for {set i 0} {$i<10} {incr i} { > exec ns simple.tcl .. .. > } > > It is only once to be run. > How i can do? > > funny > > Dan > I did repeated simulations some days ago using TCL script, more or less like your code above. Maybe someone out there knows a better approach?? Good luck! ------------ Gang Wu School of ECE Purdue University West Lafayette, Indiana 47905 Office: EE Building 51 Phone: +1 765 494-1744 From arni@caip.rutgers.edu Thu Mar 18 04:16:31 1999 From: arni@caip.rutgers.edu (arni@caip.rutgers.edu) Date: Wed, 17 Mar 1999 23:16:31 -0500 (EST) Subject: about TBF(Token Bucket Filter) In-Reply-To: Message-ID: HI Zhen, Did u consider the two token rate tbf (as defined in ) ftp://lohi.eng.telia.fi/tmp/draft-heinanen-diffserv-trtcm-00.txt It is simple... Just put two tbfs in succession:: Pkt flow----> TBF1 ----> TBF2---->Pkt Flow TBF1 parameters: rate = average rate of the flow= token rate TBF2 parameters: rate = peak rate of the flow= token rate The bucket depths are left to your choice... Will this work for u?? Just thought I should tell you.. Arni On Tue, 2 Mar 1999, Zhenhai Duan wrote: > I just checked the code of tbf, and I want to add in the Peak Rate > contraint. But I am not sure how I should use this value. The way in my > mind is this: Whenever I have enough tokens to send one packet, I postpone > (scheduling a event) the sending by a delay(packetLength/peakRate), after > timeout, I call target_->recv(p). > > Any comments are appreciated. > --Zhenhai > -------------------------------------------------------------- > Zhenhai Duan duan@cs.umn.edu > Computer Science Department http://www.cs.umn.edu/~duan > University of Minnesota, TC Phone: (612)626-7526(O) > -------------------------------------------------------------- > > From Chadi.Barakat@sophia.inria.fr Thu Mar 18 10:15:31 1999 From: Chadi.Barakat@sophia.inria.fr (Chadi M. BARAKAT) Date: Thu, 18 Mar 1999 11:15:31 +0100 Subject: command function Message-ID: <36F0D243.5C13EC47@sophia.inria.fr> Hello, I added a command function to Queue object. But when invoking one of the functions I put in command, my call goes to the command function of the class Connector. How to direct it to the Queue object?? Thanks Chadi -- ** Chadi Mohamad BARAKAT ** http://www.inria.fr/mistral/personnel/Chadi.Barakat /\ PhD Student - MISTRAL - INRIA / \ Chadi.Barakat@sophia.inria.fr 2004, Route des Lucioles BP 93 \ / Phone : + 33 4 92 38 71 99 06902 Sophia Antipolis - France \/ Cell : + 33 6 10 42 36 30 From cbrand@cosy.sbg.ac.at Thu Mar 18 12:59:37 1999 From: cbrand@cosy.sbg.ac.at (Christof Brandauer) Date: Thu, 18 Mar 1999 13:59:37 +0100 (MET) Subject: command function In-Reply-To: <36F0D243.5C13EC47@sophia.inria.fr> Message-ID: On Thu, 18 Mar 1999, Chadi M. BARAKAT wrote: : Hello, : : I added a command function to Queue object. But when invoking one of the : functions I put in command, my call goes to the command function of the : class Connector. How to direct it to the Queue object?? do you have a reference to the queue object? example: set queue [[$ns link $node1 $node2] queue] then you can send the command `cmd' to the queue: $queue cmd hope this helps, chris ----------------------------------------------------------------- Christof Brandauer cbrand@cosy.sbg.ac.at Student of Applied Informatics Department of Computer Science, University of Salzburg, Austria ----------------------------------------------------------------- From Chadi.Barakat@sophia.inria.fr Thu Mar 18 13:14:18 1999 From: Chadi.Barakat@sophia.inria.fr (Chadi M. BARAKAT) Date: Thu, 18 Mar 1999 14:14:18 +0100 Subject: command function References: Message-ID: <36F0FC2A.D4F4868D@sophia.inria.fr> I used the same code but it doesn't work. In fact, in the Docs, the class Queue has a command function but in the code it doesn't. What I did is put my new functions in the "command" function of the class of the queue type I used (Drop-Tail). Here, I will be needed to add my new functions to the class of every queue type I use instead of adding them once to the parent class Queue. Is there any configuration file to be changed in order to add a command function to an existing class as the Queue class? Thanks Chadi -- ** Chadi Mohamad BARAKAT ** http://www.inria.fr/mistral/personnel/Chadi.Barakat /\ PhD Student - MISTRAL - INRIA / \ Chadi.Barakat@sophia.inria.fr 2004, Route des Lucioles BP 93 \ / Phone : + 33 4 92 38 71 99 06902 Sophia Antipolis - France \/ Cell : + 33 6 10 42 36 30 From qtxheen@etxb.ericsson.se Thu Mar 18 13:18:15 1999 From: qtxheen@etxb.ericsson.se (Henrik Eriksson) Date: Thu, 18 Mar 1999 14:18:15 +0100 Subject: Packet offset variables Message-ID: <36F0FD17.C7FEB1E4@etxb.ericsson.se> Hi! I have a question about adding new packets to ns: When I'm adding a new packet I have to define an offset variable off_newhdr and bind it to a tclvariable: bind("off_newhdr", &off_newhdr) In order to use the variable I'll have to initilize it in tcl like LL/NewProtocol set off_newhdr 0 right? Where would a good place be to put such initialization? In ns-packet.tcl before the offsets are computed or somewhere else? Best regards, Henrik Eriksson From Lloyd Wood Thu Mar 18 14:55:44 1999 From: Lloyd Wood (Lloyd Wood) Date: Thu, 18 Mar 1999 14:55:44 +0000 (GMT) Subject: how to repeat trial? In-Reply-To: <36F0E7EC.AC641BA2@dislab.nju.edu.cn> Message-ID: On Thu, 18 Mar 1999, He Dan wrote: > I want to do many trials of ex/simple.tcl. > Write a shell or TCL script? Well, you could just put the full path of the ns binary as the first line of your OTcl script: #!/vol/user/wonderfulme/ns-2/ns chmod 755 the script, and then you can execute the script from the commandline as 'script.tcl' instead of 'ns script.tcl' That will allow you to write a script in something else executing it as any unix program, as many times as you want. cheers, L. > I write some lines as follows: > > for {set i 0} {$i<10} {incr i} { > exec ns simple.tcl .. .. > } > > It is only once to be run. > How i can do? > > funny > > Dan PGP From lafuente@informatik.uni-freiburg.de Thu Mar 18 14:59:51 1999 From: lafuente@informatik.uni-freiburg.de (Alberto Lluch Lafuente) Date: Thu, 18 Mar 1999 15:59:51 +0100 Subject: DelayModel Message-ID: <36F114E7.636D@informatik.uni-freiburg.de> Can anybody tell me how to use the Connector DelayModel for modeling links with a RandomVariable-Delay? From cbrand@cosy.sbg.ac.at Thu Mar 18 17:54:14 1999 From: cbrand@cosy.sbg.ac.at (Christof Brandauer) Date: Thu, 18 Mar 1999 18:54:14 +0100 (MET) Subject: command function In-Reply-To: <36F0FC2A.D4F4868D@sophia.inria.fr> Message-ID: On Thu, 18 Mar 1999, Chadi M. BARAKAT wrote: : I used the same code but it doesn't work. In fact, in the Docs, the : class Queue has a command function but in the code it doesn't. What I : did is put my new functions in the "command" function of the class of : the queue type I used (Drop-Tail). Here, I will be needed to add my new : functions to the class of every queue type I use instead of adding them : once to the parent class Queue. ok, i've been playing around with this for a while now and figured out what the problem is. i implemented a `command' method for the Queue object, re-make-d it, and...it didn't work. as you experienced, the Queue::command never got called, but instead a call to Connector::command was made. this is funny because in e.g. DropTail::command the last line is: return Queue::command(argc, argv); however if you delete drop-tail.o (to force a recompile of drop-tail.cc) and re-make the whole thing...it works. i guess the problem is the following (i may well be wrong): when drop-tail.cc is compiled the call Queue::command is resolved (it's _not_ a virtual method) to Connector::command because a Queue::command does not (yet) exist. so when you afterwards add a Queue::command but don't recompile drop-tail.cc nothing changes. hope this helps, chris ----------------------------------------------------------------- Christof Brandauer cbrand@cosy.sbg.ac.at Student of Applied Informatics Department of Computer Science, University of Salzburg, Austria ----------------------------------------------------------------- From Chadi.Barakat@sophia.inria.fr Thu Mar 18 18:10:05 1999 From: Chadi.Barakat@sophia.inria.fr (Chadi M. BARAKAT) Date: Thu, 18 Mar 1999 19:10:05 +0100 Subject: command function References: Message-ID: <36F1417D.1DE9C7D6@sophia.inria.fr> Thanks Christof, it works perfectly. Chadi -- ** Chadi Mohamad BARAKAT ** http://www.inria.fr/mistral/personnel/Chadi.Barakat /\ PhD Student - MISTRAL - INRIA / \ Chadi.Barakat@sophia.inria.fr 2004, Route des Lucioles BP 93 \ / Phone : + 33 4 92 38 71 99 06902 Sophia Antipolis - France \/ Cell : + 33 6 10 42 36 30 From syan@jupiter.nal.utoronto.ca Thu Mar 18 18:14:27 1999 From: syan@jupiter.nal.utoronto.ca (Shuqian Yan) Date: Thu, 18 Mar 1999 13:14:27 -0500 (EST) Subject: how to repeat trial? Message-ID: Hi, I have my script written in perl format, but the idea should be equally well applied to other script format you may want to use. .... $sim = '/home/syan/ns2/ns-2.1b4-current/ns'; for ($i=0; $i < 100; $i++) { $cmdLine2 = $sim . " " . "$workdir1/example.tcl"; } .... .... I think it should work for you, try it out! shuqian From dennylee@my-dejanews.com Thu Mar 18 20:42:23 1999 From: dennylee@my-dejanews.com (Denny Lee) Date: Thu, 18 Mar 1999 20:42:23 -0000 Subject: Nam 1.0a6 problem Message-ID: Hello, I am new to ns and Nam. I got ns to work on my Redhat 5.2 system, however, I keep getting the following error when I try using nam: /usr/ns-allinone-2.1b4a/nam-1.0a6: error in loading shared libraries /usr/lib/libtcl8.0.so: undefined symbol: stat I tried downloading a new version of nam at the web but I am still getting the same error. What can I do to fix this? Thanks. -----== Sent via Deja News, The Discussion Network ==----- http://www.dejanews.com/ Easy access to 50,000+ discussion forums From salehi@ISI.EDU Thu Mar 18 21:19:11 1999 From: salehi@ISI.EDU (Nader Salehi) Date: Thu, 18 Mar 1999 13:19:11 -0800 (PST) Subject: Nam 1.0a6 problem In-Reply-To: References: Message-ID: <199903182119.NAA18065@joy.isi.edu> Denny, Usually, you should not have this problem if you are using the `allinone' version. However, the new release was announced two days ago. Maybe it is the best time to start using the new version rather than trying to fix the old one. Presumably, the new version should not have that problem. Nader >>> "Denny" == Denny Lee writes: Denny> Hello, I am new to ns and Nam. I got ns to work on my Redhat Denny> 5.2 system, however, I keep getting the following error when I Denny> try using nam: /usr/ns-allinone-2.1b4a/nam-1.0a6: error in Denny> loading shared libraries /usr/lib/libtcl8.0.so: undefined Denny> symbol: stat Denny> I tried downloading a new version of nam at the web but I am Denny> still getting the same error. What can I do to fix this? Denny> Thanks. Denny> -----== Sent via Deja News, The Discussion Network ==----- Denny> http://www.dejanews.com/ Easy access to 50,000+ discussion Denny> forums From andree@sm.luth.se Thu Mar 18 21:32:43 1999 From: andree@sm.luth.se (Andree Jacobson) Date: Thu, 18 Mar 1999 22:32:43 +0100 (CET) Subject: Compiling problems Message-ID: Hi all! I'm having problems compiling ns 2.1b5 on FreeBSD 3.1. It stops with: misc.o: In function `VersionCommand::command(int, char const *const *)': /home/andree/ns-allinone-2.1b5/ns-2.1b5/misc.cc:107: undefined reference to `version_string' *** Error code 1 Does anyone know how to get past this problem? Any help would be greatly appreciated. Thanks. /Andree Jacobson; andree@sm.luth.se From haoboy@isi.edu Thu Mar 18 21:44:13 1999 From: haoboy@isi.edu (Haobo Yu) Date: Thu, 18 Mar 1999 13:44:13 -0800 (PST) Subject: Compiling problems In-Reply-To: Message-ID: It should be defined in the generated gen/version.c. Can you please check why that file was not correctly generated? Perhaps your configure didn't find a correct path to tclsh? - Haobo On Thu, 18 Mar 1999, Andree Jacobson wrote: > Hi all! > > I'm having problems compiling ns 2.1b5 on FreeBSD 3.1. It stops with: > > misc.o: In function `VersionCommand::command(int, char const *const *)': > /home/andree/ns-allinone-2.1b5/ns-2.1b5/misc.cc:107: undefined reference to > `version_string' > *** Error code 1 > > Does anyone know how to get past this problem? > > Any help would be greatly appreciated. > Thanks. > > /Andree Jacobson; andree@sm.luth.se > > From haoboy@isi.edu Thu Mar 18 21:46:10 1999 From: haoboy@isi.edu (Haobo Yu) Date: Thu, 18 Mar 1999 13:46:10 -0800 (PST) Subject: Nam 1.0a6 problem In-Reply-To: Message-ID: The mostly likely course is that the libtcl nam was linked to is different from /usr/lib/libtcl8.0.so. Since you are using ns-allinone, nam should use the tcl8.0.4 in the package instead of something in /usr/lib? - Haobo On Thu, 18 Mar 1999, Denny Lee wrote: > Hello, > I am new to ns and Nam. I got ns to work on my Redhat > 5.2 system, however, I keep getting the following > error when I try using nam: > /usr/ns-allinone-2.1b4a/nam-1.0a6: error in loading shared libraries > /usr/lib/libtcl8.0.so: undefined symbol: stat > > I tried downloading a new version of nam at the web > but I am still getting the same error. What can I > do to fix this? Thanks. > > > > -----== Sent via Deja News, The Discussion Network ==----- > http://www.dejanews.com/ Easy access to 50,000+ discussion forums > From harlisya@erg.abdn.ac.uk Thu Mar 18 21:57:09 1999 From: harlisya@erg.abdn.ac.uk (Harlisya Harun) Date: Thu, 18 Mar 1999 21:57:09 +0000 Subject: ACK Mechanism in FullTcp Message-ID: <36F176AE.C70D50C9@erg.abdn.ac.uk> Hi, Have anyone tried to change the ACK mechanism in FullTcp so that, the ACK sequence number increases, instead of just set to '1'. I do not have any clue how to start? Thank you. harlisya From johnh@ISI.EDU Thu Mar 18 22:16:53 1999 From: johnh@ISI.EDU (John Heidemann) Date: Thu, 18 Mar 1999 14:16:53 -0800 Subject: Nam 1.0a6 problem In-Reply-To: Message-ID: <199903182216.OAA18299@dash.isi.edu> On Thu, 18 Mar 1999 13:46:10 PST, Haobo Yu wrote: >The mostly likely course is that the libtcl nam was linked to is different >from /usr/lib/libtcl8.0.so. Since you are using ns-allinone, nam should >use the tcl8.0.4 in the package instead of something in /usr/lib? I believe this ``/usr/lib/libtcl8.0.so: undefined symbol: stat'' is a Redhat specific problem. I had the same thing with binaries built under redhat 5.1 and run under 5.2. You should check that your ns is built against your current libtcl and that your libtcl was built against your current libc (i.e., make sure you have the up-to-date RPMs for tcl). -John Heidemann >On Thu, 18 Mar 1999, Denny Lee wrote: > >> Hello, >> I am new to ns and Nam. I got ns to work on my Redhat >> 5.2 system, however, I keep getting the following >> error when I try using nam: >> /usr/ns-allinone-2.1b4a/nam-1.0a6: error in loading shared libraries >> /usr/lib/libtcl8.0.so: undefined symbol: stat >> >> I tried downloading a new version of nam at the web >> but I am still getting the same error. What can I >> do to fix this? Thanks. >> >> >> >> -----== Sent via Deja News, The Discussion Network ==----- >> http://www.dejanews.com/ Easy access to 50,000+ discussion forums >> > From c.christian.joensson@telia.com Thu Mar 18 22:30:24 1999 From: c.christian.joensson@telia.com (=?iso-8859-1?Q?Christian_J=F6nsson?=) Date: Thu, 18 Mar 1999 23:30:24 +0100 Subject: FW: tcl tk in windows C++ console app source? Message-ID: <007201be718e$f51150c0$4d29c6c3@a010270583> This is a multi-part message in MIME format. ------=_NextPart_000_006C_01BE7197.4C5B3A00 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: quoted-printable Hello ns-users, I'm forwarding this posting to you all in the hope that perhaps someone = would like to, and has a possibility, to pick up the subject of getting nam working = under Win9x/NT4.0 using a recent Tcl/Tk (8.0.5 perhaps) distribution's dll libraries = instead of the static variants used by the mash/ns/nam teams. I, a little naively perhaps, got the = Tcl/Tk binary release 8.0.5, and the source code releases also (to get the ``internal'' header files) = but the resulting binary fails with an unexpected page error on tcl80.dll and the error message = "xxx tcl_findLibrary". Perhaps someone with more time and other possibilities and skills might = be interested in picking this subject up? /ChJ -----Ursprungligt meddelande----- Fr=E5n: John F. Davis Diskussionsgrupper: comp.lang.tcl Datum: den 16 mars 1999 16:17 =C4mne: Re: tcl tk in windows C++ console app source? >In article ,=20 >john.davis@wg.com says... >> Hello >>=20 >> I need help with a simple c++ console app which embeds tcl/tk. I = pretty=20 >> much copied the code from Eric Foster-Johnson Graphics with Tcl&Tk = book. >> However, it doesn't do anything. I looked at the tkView app and I=20 >> noticed he does this on a timer, > > > >For the archive searchers, here is an app in total simplicty. =20 > >Its just one file. It uses a script called c:\tmp\foo.tcl by default = if >one isn't given on the command line. =20 > >------------------------------- >#include >#include >#include >#include > > > >int MyInitTclTk(Tcl_Interp *interp) { > > > int status =3D TCL_OK; > > > status =3D Tcl_Init(interp); > > > // Report Errors > if (status !=3D TCL_OK) { > printf("TCL Error: %d\n", status); > return TCL_ERROR; > } > > status =3D Tk_Init(interp); > > > // Report Errors > if (status !=3D TCL_OK) { > printf("TK Error: %d\n", status); > return TCL_ERROR; > } > > > > return TCL_OK; >} > > > >int main(int argc, char ** argv) { > > > > Tcl_Interp *interp; > int status =3D TCL_OK; > > > printf("Sample Tcl/Tk script eval app.\n"); > > > // Create the interpeter. > interp =3D Tcl_CreateInterp(); > > // Init the interpeter. > MyInitTclTk(interp); > > > > // Eval the scrit. Eval the default one, if none is > // given on command line. > char pchBuffer[100]; > printf("argc =3D %d\n",argc); > if (argc =3D=3D 2) { > sprintf(pchBuffer,"%s",argv[1]); > } else { > sprintf(pchBuffer,"c:\\tmp\\foo.tcl"); > } > status =3D Tcl_EvalFile(interp,pchBuffer); > > > > // Print result string; > if (interp->result !=3D NULL) { > printf("TCL: [%s]\n", Tcl_GetStringResult(interp)); > } > > > // Report Errors > if (status !=3D TCL_OK) { > printf("TCL Error: %d\n", status); > exit(1); > } > > > > int ok=3D1; > Tk_Window tkmain; > while (ok) { > Tcl_DoOneEvent(TCL_ALL_EVENTS|TCL_DONT_WAIT); > tkmain =3D Tk_MainWindow(interp); > if (tkmain =3D=3D NULL) { > ok =3D 0; > } > } > > > > // Free memory for interpeter > Tcl_DeleteInterp(interp); > > // Report Errors > if (status !=3D TCL_OK) { > printf("TCL Error: %d\n", status); > exit(1); > } > > > > return 0; >} > > > > > > ------=_NextPart_000_006C_01BE7197.4C5B3A00 Content-Type: text/x-vcard; name="=?iso-8859-1?Q?Christian_J=F6nsson.vcf?=" Content-Transfer-Encoding: quoted-printable Content-Disposition: attachment; filename="=?iso-8859-1?Q?Christian_J=F6nsson.vcf?=" BEGIN:VCARD VERSION:2.1 N:J=F6nsson;Christian FN:Christian J=F6nsson EMAIL;PREF;INTERNET:c.christian.joensson@telia.com REV:19990318T223024Z END:VCARD ------=_NextPart_000_006C_01BE7197.4C5B3A00-- From dennylee@my-dejanews.com Thu Mar 18 22:40:56 1999 From: dennylee@my-dejanews.com (Denny Lee) Date: Thu, 18 Mar 1999 22:40:56 -0000 Subject: Nam 1.0a6 problem Message-ID: Thanks for everyone's help. I downloaded the latest version and recompile the programs. Everything works great now. -- On Thu, 18 Mar 1999 14:16:53 John Heidemann wrote: >On Thu, 18 Mar 1999 13:46:10 PST, Haobo Yu wrote: >>The mostly likely course is that the libtcl nam was linked to is different >>from /usr/lib/libtcl8.0.so. Since you are using ns-allinone, nam should >>use the tcl8.0.4 in the package instead of something in /usr/lib? > >I believe this ``/usr/lib/libtcl8.0.so: undefined symbol: stat'' is a >Redhat specific problem. I had the same thing with binaries built >under redhat 5.1 and run under 5.2. You should check that your ns is >built against your current libtcl and that your libtcl was built >against your current libc (i.e., make sure you have the up-to-date >RPMs for tcl). > > -John Heidemann > >>On Thu, 18 Mar 1999, Denny Lee wrote: >> >>> Hello, >>> I am new to ns and Nam. I got ns to work on my Redhat >>> 5.2 system, however, I keep getting the following >>> error when I try using nam: >>> /usr/ns-allinone-2.1b4a/nam-1.0a6: error in loading shared libraries >>> /usr/lib/libtcl8.0.so: undefined symbol: stat >>> >>> I tried downloading a new version of nam at the web >>> but I am still getting the same error. What can I >>> do to fix this? Thanks. >>> >>> >>> >>> -----== Sent via Deja News, The Discussion Network ==----- >>> http://www.dejanews.com/ Easy access to 50,000+ discussion forums >>> >> > > -----== Sent via Deja News, The Discussion Network ==----- http://www.dejanews.com/ Easy access to 50,000+ discussion forums From stakkella@atcorp.com Thu Mar 18 22:58:24 1999 From: stakkella@atcorp.com (sid takkella) Date: Thu, 18 Mar 1999 16:58:24 -0600 Subject: ACK Mechanism in FullTcp Message-ID: <01BE7160.89B08A40@seal.atcorp.com> the ackno is not always 1. it is equal to number_of_ bytes_received +1. i worked with fulltcp, and it was working fine for me. Sid -----Original Message----- From: Harlisya Harun [SMTP:harlisya@erg.abdn.ac.uk] Sent: Thursday, March 18, 1999 3:57 PM To: ns-users@mash.CS.Berkeley.EDU Subject: ACK Mechanism in FullTcp Hi, Have anyone tried to change the ACK mechanism in FullTcp so that, the ACK sequence number increases, instead of just set to '1'. I do not have any clue how to start? Thank you. harlisya From abajpai@cs.tamu.edu Thu Mar 18 22:56:17 1999 From: abajpai@cs.tamu.edu (Aneema - Bajpai) Date: Thu, 18 Mar 1999 16:56:17 -0600 (CST) Subject: unsubscribe In-Reply-To: Message-ID: unsubscribe From johnh@ISI.EDU Thu Mar 18 23:03:29 1999 From: johnh@ISI.EDU (John Heidemann) Date: Thu, 18 Mar 1999 15:03:29 -0800 Subject: Anyone have source code for ELN? In-Reply-To: <36EDD201.15FCB560@ee.uwa.edu.au> Message-ID: <199903182303.PAA18790@dash.isi.edu> On Tue, 16 Mar 1999 11:37:37 +0800, Sean Lee wrote: >Hi, > >I'm doing a project that uses ns-2 and I want to experiment on TCP using >Explicit Loss Notification (ELN). I was wondering if anyone has any >source code for a TCP agent that includes ELN or any other loss >notification feedback. > >Any help is greatly appreciated. > >Thanks > >Sean > Current ns one-way TCP contains ECN. -John Heidemann From nakfourj@cse.msu.edu Thu Mar 18 23:26:34 1999 From: nakfourj@cse.msu.edu (Juana Elias Nakfour) Date: Thu, 18 Mar 1999 18:26:34 -0500 (EST) Subject: nam-1.0a7 Message-ID: Hi everyone, I just downloaded the new ns-allinone-2.1b5 on Sun Ultra sparc. ns is working fine but I was unable to compile nam-1.0a7. It gave me the following errors: __________________________ xwd.c: In function `xwd_Window_Dump': xwd.c:279: `sz_' undeclared (first use in this function) xwd.c:279: (Each undeclared identifier is reported only once xwd.c:279: for each function it appears in.) xwd.c:279: parse error before `XWDheader' xwd.c:328: parse error before `XWDheader' xwd.c: At top level: xwd.c:339: parse error before `for' xwd.c:347: parse error before `1' xwd.c:347: warning: data definition has no type or storage class xwd.c:364: parse error before `1' xwd.c:364: warning: data definition has no type or storage class xwd.c:377: parse error before `->' *** Error code 1 make: Fatal error: Command failed for target `xwd.o' ___________________________________ Thanks in advance. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ Juana Nakfour | URL: www.cse.msu.edu/~nakfourj Graduate Assistant | Address: 201 N. Pennsylvania Computer Science and Engineering Dept. | Lansing, MI 48912. Michigan State University | Phone: (517) 487 9031 "F1 all the way.............." ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ From johnh@ISI.EDU Fri Mar 19 00:10:31 1999 From: johnh@ISI.EDU (John Heidemann) Date: Thu, 18 Mar 1999 16:10:31 -0800 Subject: Packet size problem/question In-Reply-To: Message-ID: <199903190010.QAA19402@dash.isi.edu> On Sat, 13 Mar 1999 17:52:20 EST, Smitty wrote: >Okay, here's the deal, hopefully someone can help me. I've read the notes >and Docs, and the tutorial, and scanned the archive. > >I am trying to get a new agent implemented that sends a packet to another >node, and this other node looks at it and sends an acknowledgement bck. >Both nodes are running the same agent, so I have a recv that checks if it >should be an acknowledged packet or not. Upon seeing that ti should ack >the packet, it does a Packet *pktret = allocpkt();. The agent who then >sends this packet shows that the hdr_cmn->size_ of this packet is >correctly 0, i.e., only the header is necessary? Or should that be >including the size of the header? But at any rate, the agent who receives >this packet sees it's size as the size of the packet that generated the >ack, not as 0 or whatever it should be. > >Any help would be appreciated, especially if this stems from some gross >misunderstanding of how ns uses packets/agents. Thanks. NN&D in the subsection "The hdr\_cmn Class" says: The \code{size_} field is of general use and gives the simulated packet's size. Note that the actual number of bytes consumed in the simulation may not relate to the value of this field. Rather, it is used most often in computing the time required for a packet to be delivered along a network link. I've added a little to this to clarify the questions you raise: The \code{size_} field is of general use and gives the simulated packet's size in bytes. Note that the actual number of bytes consumed in the simulation may not relate to the value of this field (i.e., \code{size_} has \emph{no} relationship to \code{sizeof(struct hdr_cmn)} or other ns structures). Rather, it is used most often in computing the time required for a packet to be delivered along a network link. As such it should be set to the sum of the application data size and IP-, transport-, and application-level headers for the simulated packet. -John Heidemann From velayuthem@vayu.net Fri Mar 19 00:10:00 1999 From: velayuthem@vayu.net (manick) Date: Thu, 18 Mar 1999 16:10:00 -0800 Subject: No subject Message-ID: <000001be719c$d47e5ac0$31bd98cc@arya.vayu.net> subscribe ns users From s198198@ccs.sogang.ac.kr Fri Mar 19 01:04:57 1999 From: s198198@ccs.sogang.ac.kr (=?euc-kr?B?sejDosij?=) Date: Fri, 19 Mar 1999 10:04:57 +0900 Subject: I can't interpret *.tr file! Message-ID: <003701be71a4$82cb7660$9a91efa3@eeca6.sogang.ac.kr> This is a multi-part message in MIME format. ------=_NextPart_000_0034_01BE71EF.F1C9A8C0 Content-Type: text/plain; charset="euc-kr" Content-Transfer-Encoding: base64 SGkgYWxsIQ0KDQpBbnkgb25lIGNhbiBpbnRlcnByZXQgKi50ciBmaWxlPw0KDQoqLnRyIGZpbGUg aXMgdHJhY2UgZmlsZSBvZiBucyBzaW11bGF0aW9uLg0KRm9sbG93aW5nIGlzIGEgcGFydCBvZiAq LnRyIGZpbGUuDQoNCg0KciAxLjUwMDk1IDEgMiB0Y3AgMTA0MCAgLS0tQS0tLSAwIDAuMCAyLjAg MTAwMSAxMCAxIDB4MTAgNDAgMA0KDQoNCkkgZG9uJ3Qga25vdyB3aGF0ICdBJyBtZWFucy4NCkkg ZG9uJ3Qga25vdyB3aGF0IGxhc3QgMyBmaWVsZHMsICcweDEwIDQwIDAnIG1lYW4uDQoNClBsZWFz ZSBoZWxwIG1lISENCg== ------=_NextPart_000_0034_01BE71EF.F1C9A8C0 Content-Type: text/html; charset="euc-kr" Content-Transfer-Encoding: base64 PCFET0NUWVBFIEhUTUwgUFVCTElDICItLy9XM0MvL0RURCBXMyBIVE1MLy9FTiI+DQo8SFRNTD4N CjxIRUFEPg0KDQo8TUVUQSBjb250ZW50PSJ0ZXh0L2h0bWw7IGNoYXJzZXQ9a3NfY181NjAxLTE5 ODciIGh0dHAtZXF1aXY9Q29udGVudC1UeXBlPg0KPE1FVEEgY29udGVudD0nIk1TSFRNTCA0Ljcy LjMxMTAuNyInIG5hbWU9R0VORVJBVE9SPg0KPC9IRUFEPg0KPEJPRFkgYmdDb2xvcj0jZmZmZmZm Pg0KPERJVj48Rk9OVCBjb2xvcj0jMDAwMDAwIHNpemU9Mj5IaSBhbGwhPC9GT05UPjwvRElWPg0K PERJVj48Rk9OVCBjb2xvcj0jMDAwMDAwIHNpemU9Mj48L0ZPTlQ+Jm5ic3A7PC9ESVY+DQo8RElW PjxGT05UIHNpemU9Mj5Bbnkgb25lIGNhbiBpbnRlcnByZXQgKi50ciBmaWxlPzwvRk9OVD48L0RJ Vj4NCjxESVY+PEZPTlQgc2l6ZT0yPjwvRk9OVD4mbmJzcDs8L0RJVj4NCjxESVY+PEZPTlQgc2l6 ZT0yPioudHIgZmlsZSBpcyB0cmFjZSBmaWxlIG9mIG5zIHNpbXVsYXRpb24uPC9GT05UPjwvRElW Pg0KPERJVj48Rk9OVCBzaXplPTI+Rm9sbG93aW5nIGlzIGEgcGFydCBvZiAqLnRyIGZpbGUuPC9G T05UPjwvRElWPg0KPERJVj48Rk9OVCBzaXplPTI+PC9GT05UPiZuYnNwOzwvRElWPg0KPERJVj4m bmJzcDs8L0RJVj4NCjxESVY+PEZPTlQgc2l6ZT0yPnIgMS41MDA5NSAxIDIgdGNwIDEwNDAmbmJz cDsgLS0tQS0tLSAwIDAuMCAyLjAgMTAwMSAxMCAxIDB4MTAgDQo0MCAwPC9GT05UPjwvRElWPg0K PERJVj48Rk9OVCBzaXplPTI+PC9GT05UPiZuYnNwOzwvRElWPg0KPERJVj48Rk9OVCBzaXplPTI+ PC9GT05UPiZuYnNwOzwvRElWPg0KPERJVj48Rk9OVCBzaXplPTI+SSBkb24ndCBrbm93IHdoYXQg J0EnIG1lYW5zLjwvRk9OVD48L0RJVj4NCjxESVY+PEZPTlQgc2l6ZT0yPkkgZG9uJ3Qga25vdyB3 aGF0IGxhc3QgMyBmaWVsZHMsICcweDEwIDQwIDAnIA0KbWVhbi48L0ZPTlQ+PC9ESVY+DQo8RElW PjxGT05UIHNpemU9Mj48L0ZPTlQ+Jm5ic3A7PC9ESVY+DQo8RElWPjxGT05UIHNpemU9Mj5QbGVh c2UgaGVscCBtZSEhPC9GT05UPjwvRElWPjwvQk9EWT48L0hUTUw+DQo= ------=_NextPart_000_0034_01BE71EF.F1C9A8C0-- From kopi5ue@ccs.iitb.ernet.in Fri Mar 19 04:09:26 1999 From: kopi5ue@ccs.iitb.ernet.in (Milind Kopikar) Date: Fri, 19 Mar 1999 09:39:26 +0530 (IST) Subject: unsubscribe Message-ID: unsubscribe From haoboy@isi.edu Fri Mar 19 05:00:16 1999 From: haoboy@isi.edu (Haobo Yu) Date: Thu, 18 Mar 1999 21:00:16 -0800 (PST) Subject: nam-1.0a7 In-Reply-To: Message-ID: This is an old bug, which unfortunately still found its way into this release. :( The solution is described in http://mash.cs.berkeley.edu/nam/nam-problems.html. - Haobo On Thu, 18 Mar 1999, Juana Elias Nakfour wrote: > Hi everyone, > > I just downloaded the new ns-allinone-2.1b5 on Sun Ultra sparc. > ns is working fine but I was unable to compile nam-1.0a7. It gave me the > following errors: > > > __________________________ > > > xwd.c: In function `xwd_Window_Dump': > xwd.c:279: `sz_' undeclared (first use in this function) > xwd.c:279: (Each undeclared identifier is reported only once > xwd.c:279: for each function it appears in.) > xwd.c:279: parse error before `XWDheader' > xwd.c:328: parse error before `XWDheader' > xwd.c: At top level: > xwd.c:339: parse error before `for' > xwd.c:347: parse error before `1' > xwd.c:347: warning: data definition has no type or storage class > xwd.c:364: parse error before `1' > xwd.c:364: warning: data definition has no type or storage class > xwd.c:377: parse error before `->' > *** Error code 1 > make: Fatal error: Command failed for target `xwd.o' > > ___________________________________ > > Thanks in advance. > > > > > > > > > > > > > ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ > Juana Nakfour | URL: www.cse.msu.edu/~nakfourj > Graduate Assistant | Address: 201 N. Pennsylvania > Computer Science and Engineering Dept. | Lansing, MI 48912. > Michigan State University | Phone: (517) 487 9031 > "F1 all the way.............." > ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ > > From Stefan.Dresler@telematik.informatik.uni-karlsruhe.de Fri Mar 19 09:45:34 1999 From: Stefan.Dresler@telematik.informatik.uni-karlsruhe.de (Stefan Dresler) Date: Fri, 19 Mar 1999 10:45:34 +0100 Subject: nam-1.0a7 In-Reply-To: Your message of "Thu, 18 Mar 1999 21:00:16 PST." Message-ID: <199903190945.KAA02275@blackfoot.telematik.informatik.uni-karlsruhe.de> Dear Juana, Haobo, ns-users, > ns is working fine but I was unable to compile nam-1.0a7. It gave me the > This is an old bug, Yes ;-) We had the same problem with an older release, and now again with the newest. > which unfortunately still found its way into this > release. :( The solution is described in > http://mash.cs.berkeley.edu/nam/nam-problems.html. This only seems to be a solution for an older nam version. Two of the three alterations described cannot be applied anymore because the lines do not match those described (at least in our installation, which should be the newest 2.1b5, installed yesterday night). Add this to the file xwd.c as line 92 #define SIZEOF(x) sz_##x Comment out line 59 of the file config.h. /* typedef signed char int8_t; */ Comment out line 45 in random.cc /* extern "C" int srandom(...); */ The first patch works and should be the reason for the compile error, as can be seen from the (correct) warning that SIZEOF has been redefined once the patch is applied: xwd.c:93: warning: `SIZEOF' redefined /usr/include/X11/Xmd.h:92: warning: this is the location of the previous definition Those lines in the file (again, in our installation) are: /* * Definition of macro used to set constants for size of network structures; * machines with preprocessors that can't handle all of the sz_ symbols * can define this macro to be sizeof(x) if and only if their compiler doesn't * pad out structures (esp. the xTextElt structure which contains only two * one-byte fields). Network structures should always define sz_symbols. * * The sz_ prefix is used instead of something more descriptive so that the * symbols are no more than 32 characters long (which causes problems for some * compilers and preprocessors). * * The extra indirection in the __STDC__ case is to get macro arguments to * expand correctly before the concatenation, rather than afterward. */ #if ((__STDC__ || defined(__cplusplus) || defined(c_plusplus)) && !defined(UNIXC PP)) || defined(ANSICPP) #define _SIZEOF(x) sz_##x #define SIZEOF(x) _SIZEOF(x) #else #define SIZEOF(x) sz_/**/x #endif /* if ANSI C compiler else not */ So the "real" reason (again, at least in our installation and with our libraries, include files and compiler(s)) is the compiler's inability to correctly process sz_/**/x (or alternatively sz_##x, which is supposed to do the same): in includes a space instead of just throwing away the comment and directly concatenating the two parts of the string, sz_ and x, which can been seen by looking at the precompiler output. So I guess it is possible to directly add the sz_ prefix in all (three) lines in xwd.c where SIZEOF is used, but I did not test this. If I only use the first patch hint (add a line with #define), the files compile and link nicely (haven't tested it yet, though), with the warning mentioned above. So this is what I recommend until someone convinces me of something else :-) What we did originally was to change xwd.c to include some numbers (but do not ask my now where we got those from), and this worked, too: diff nam-1/xwd.c nam-1.orig/xwd.c 279c279 < header_size = SIZEOF(XWDheader) + win_name_size; --- > header_size = 100 + win_name_size; 328c328 < if (fwrite((char *)&header, SIZEOF(XWDheader), 1, out) != 1 || --- > if (fwrite((char *)&header, 100, 1, out) != 1 || 345c345 < if (fwrite((char *) &xwdcolor, SIZEOF(XWDColor), 1, out) != 1) { --- > if (fwrite((char *) &xwdcolor, 12, 1, out) != 1) { Hope this helps, if anything was unclear at all. Yours, Stefan From joumdane@my-dejanews.com Fri Mar 19 10:08:47 1999 From: joumdane@my-dejanews.com (Joumdane Abdelhamid) Date: Fri, 19 Mar 1999 02:08:47 -0800 Subject: mcast5.tcl problem Message-ID: Hi ns-users, I'm trying to execute ~tcl/ex/newmcast/mcast5.tcl, but I have the following output : newmcast 136 % ns mcast5.tcl using backward compatible Agent/CBR; use Application/Traffic/CBR instead ... using backward compatible Agent/CBR; use Application/Traffic/CBR instead called "_o478" with too many arguments (Object next line 1) invoked from within "$self next $sim $node" (procedure "_o478" line 5) (BST init line 5) invoked from within "_o478 init _o3 _o10" (Class create line 1) invoked from within "BST create _o478 _o3 _o10" invoked from within "catch "$className create $o $args" msg" (procedure "new" line 3) invoked from within "new $mproto $self $Node_($n)" (procedure "_o3" line 20) (Simulator mrtproto line 20) invoked from within "$ns mrtproto $mproto {}" (file "mcast5.tcl" line 59) Thanks Abdelhamid Joumdane -----== Sent via Deja News, The Discussion Network ==----- http://www.dejanews.com/ Easy access to 50,000+ discussion forums From nakfourj@cse.msu.edu Fri Mar 19 16:04:55 1999 From: nakfourj@cse.msu.edu (Juana Elias Nakfour) Date: Fri, 19 Mar 1999 11:04:55 -0500 (EST) Subject: nam-1.0a7 In-Reply-To: <199903190945.KAA02275@blackfoot.telematik.informatik.uni-karlsruhe.de> Message-ID: Hi everyone, Thanks a lot for the help. I just did the following two changes and nam-1.0a7 compiled correctly and is running fine: > Add this to the file xwd.c as line 92 > #define SIZEOF(x) sz_##x > > Comment out line 59 of the file config.h. > /* typedef signed char int8_t; */ > Juana Nakfour From yuri@who.isi.edu Fri Mar 19 18:37:14 1999 From: yuri@who.isi.edu (Yuri Pryadkin) Date: 19 Mar 1999 10:37:14 -0800 Subject: mcast5.tcl problem In-Reply-To: "Joumdane Abdelhamid"'s message of "Fri, 19 Mar 1999 02:08:47 -0800" References: Message-ID: That's probably because you're using an older ns version. "Joumdane Abdelhamid" writes: > Hi ns-users, > > I'm trying to execute ~tcl/ex/newmcast/mcast5.tcl, but I have the following output : > newmcast 136 % ns mcast5.tcl > using backward compatible Agent/CBR; use Application/Traffic/CBR instead > ... > using backward compatible Agent/CBR; use Application/Traffic/CBR instead > called "_o478" with too many arguments > (Object next line 1) > invoked from within > "$self next $sim $node" From softrel9@nortelnetworks.com Fri Mar 19 19:10:55 1999 From: softrel9@nortelnetworks.com (Sarah Liu) Date: Fri, 19 Mar 1999 13:10:55 -0600 Subject: virtual Lan with hierarchical routing Message-ID: <03E3E0690542D211A1490000F80836F43E45E7@zcard00f.ca.nortel.com> Hi, everyone: After reading the source code of vlan.tcl and its documentation, I am still a little bit confused with this warning: " if used with hierarchical routing, one has to assign a hierarchical address to the lan itself. " 1.What is hierarchical routing? Is there any relationship with dynamic routing? What' s the difference with static routing? 2. What is hierarchical address? How can I assign this address to the lan? Thanks in advance. Sarah ---------------------------------------------------------------------------- -------------------------------- Sarah Xiaohui Liu, 613-765-3203 o__ o~__ Email: softrel9@nortelnetworks.com _,>/_ _,>/_ u1452573@csi.uottawa.ca (*) (*) (*) (*) Mail Stop: 0C32, Nortel Networks Corp. ---------------------------------------------------------------------------- -------------------------------- From syan@jupiter.nal.utoronto.ca Fri Mar 19 20:28:39 1999 From: syan@jupiter.nal.utoronto.ca (Shuqian Yan) Date: Fri, 19 Mar 1999 15:28:39 -0500 (EST) Subject: generate topology with asymmetric links Message-ID: Hello, all Using the available topology generator currently available in ns, such as the G-Tech generator by Zegura, it seems the generator only able to produce symmetric graphs (pls correct me if I am wrong). Has anyone had experience to generate graphs with directed edges or assymetric links? Would you like to share with me about this? tks in advance! shuqian From Lloyd Wood Fri Mar 19 20:55:33 1999 From: Lloyd Wood (Lloyd Wood) Date: Fri, 19 Mar 1999 20:55:33 +0000 (GMT) Subject: Nam display for large graphs Message-ID: On Fri, 19 Mar 1999, Shuqian Yan wrote: > Hello, > > I am just wondering whether you can provide some pointers as how to > configure the nam layout for a large graphs, e.g. a few hundred nodes. Well, I have the advantage that the network topologies I'm looking at are pretty much symmetrical, so I just let nam's autoplacing get on with it, and only minor tweaking of springiness etc is needed. This is actually a tricky problem in general - ideally you'd want to be able to assign springiness etc to defined parts of your networks, so that the various bits are drawn appropriately, which would involve passing hierarchy hints to nam for various subnetworks... um, haobo? L. nam layout is the least of my problems... > tks in advance, > > shuqian PGP From toon@glue.umd.edu Fri Mar 19 21:57:56 1999 From: toon@glue.umd.edu (Susan Tsao) Date: Fri, 19 Mar 1999 16:57:56 -0500 (EST) Subject: unsubscribe In-Reply-To: Message-ID: From yuri@who.isi.edu Fri Mar 19 23:07:32 1999 From: yuri@who.isi.edu (Yuri Pryadkin) Date: 19 Mar 1999 15:07:32 -0800 Subject: virtual Lan with hierarchical routing In-Reply-To: "Sarah Liu"'s message of "Fri, 19 Mar 1999 13:10:55 -0600" References: <03E3E0690542D211A1490000F80836F43E45E7@zcard00f.ca.nortel.com> Message-ID: Hmm. It seems that hierarchical routing is still undocumented... Basically it's using hierarchical addressing (nodes have addresses like 1.2.3). It's expected to work faster for large topologies. This is pretty much orthogonal to dynamic routing. 1. You don't have to use it. The default flat routing gives you better routes and is also faster for smaller topologies. 2. See tcl/ex/hier-rtg-*.tcl for examples and also tcl/test/test-suite-hier-routing.tcl. "Sarah Liu" writes: > Hi, everyone: > > After reading the source code of vlan.tcl and its documentation, I am still > a little bit confused with this warning: > " if used with hierarchical routing, one has to assign a hierarchical > address to the lan itself. " > > 1.What is hierarchical routing? Is there any relationship with dynamic > routing? What' s the difference with static routing? > 2. What is hierarchical address? How can I assign this address to the lan? > > Thanks in advance. > > Sarah > > > ---------------------------------------------------------------------------- > -------------------------------- > Sarah Xiaohui Liu, 613-765-3203 o__ o~__ > Email: softrel9@nortelnetworks.com _,>/_ _,>/_ > u1452573@csi.uottawa.ca (*) (*) (*) (*) > Mail Stop: 0C32, Nortel Networks Corp. > > ---------------------------------------------------------------------------- > -------------------------------- From Lloyd Wood Fri Mar 19 23:26:24 1999 From: Lloyd Wood (Lloyd Wood) Date: Fri, 19 Mar 1999 23:26:24 +0000 (GMT) Subject: virtual Lan with hierarchical routing In-Reply-To: Message-ID: On 19 Mar 1999, Yuri Pryadkin wrote: > Hmm. It seems that hierarchical routing is still undocumented... Hmmm, I could have sworn that hierarchical routing, like hierarchical addressing, had brief mentions in nsDoc about a year ago (back when a single level of hierarchical addressing got supported), but that since all mention of the necessary $ns set-address-format had vanished from same last I looked, that it's not explicitly currently supported and You're On Your Own. (grabs 3 March nsDoc.ps, converts to pdf, runs Find... in Acrobat Reader...) whoops, no, the new chapter 2 lists it as undocumented. Cool. undocumented!=unsupported/broken; I do like to be able to assign risk values to the various programming strategies open to me. There's still no mention of the necessary set-address-format anywhere in the current nsDoc, though, presumably due to odd interactions with e.g. multicast if you try using something other than that used-to-be-deprecated Node expandaddr. cheers, L. http://www-sop.inria.fr/rodeo/personnel/Antoine.Clerget/ for rather useful class autodocumentation links in the left frame, btw. PGP From abolos@softeng.es Sat Mar 20 13:40:05 1999 From: abolos@softeng.es (ANGEL BOLOS BELMONTE) Date: Sat, 20 Mar 1999 13:40:05 +-100 Subject: unsubscribe Message-ID: <01BE72D7.4BD778A0@abolos> unsubscribe From rsingh@ee.iitb.ernet.in Sat Mar 20 13:54:32 1999 From: rsingh@ee.iitb.ernet.in (Ravi K Singh (94707009)) Date: Sat, 20 Mar 1999 19:24:32 +0530 (IST) Subject: unsubscribe Message-ID: unsubscribe From johnh@ISI.EDU Sun Mar 21 04:57:30 1999 From: johnh@ISI.EDU (John Heidemann) Date: Sat, 20 Mar 1999 20:57:30 -0800 Subject: reminder about subscribing/unsubscribing to ns-users Message-ID: <199903210457.UAA28279@dash.isi.edu> A reminder for ns-users readers: for information about subscribing/unsubscribing to ns-users, please see . (To subscribing/unsubscribing you need to send mail to ns-users-request or majordomo, NOT ns-users. Please DON'T post directly to the list!) Hopefully shortly we will reconfigure the mailing list to automatically detect administrative messages sent directly to the list. -John Heidemann From yiyung@mmlab.snu.ac.kr Sun Mar 21 20:39:50 1999 From: yiyung@mmlab.snu.ac.kr (Yung Yi) Date: Mon, 22 Mar 1999 05:39:50 +0900 Subject: RTP Scuba Message-ID: <000901be73da$f8051520$3b0f2e93@sapphire.snu.ac.kr> This is a multi-part message in MIME format. ------=_NextPart_000_0006_01BE7426.6798D0C0 Content-Type: text/plain; charset="euc-kr" Content-Transfer-Encoding: base64 SGkuDQoNCldoYXQgaXMgUlRQIFNjdWJhID8NCg0KVGhhbmtzLg0KDQplbWFpbCA6IHlpeXVuZ0Bt bWxhYi5zbnUuYWMua3INCg0K ------=_NextPart_000_0006_01BE7426.6798D0C0 Content-Type: text/html; charset="euc-kr" Content-Transfer-Encoding: base64 PCFET0NUWVBFIEhUTUwgUFVCTElDICItLy9XM0MvL0RURCBXMyBIVE1MLy9FTiI+DQo8SFRNTD4N CjxIRUFEPg0KDQo8TUVUQSBjb250ZW50PSJ0ZXh0L2h0bWw7IGNoYXJzZXQ9a3NfY181NjAxLTE5 ODciIGh0dHAtZXF1aXY9Q29udGVudC1UeXBlPg0KPE1FVEEgY29udGVudD0nIk1TSFRNTCA0Ljcy LjMxMTAuNyInIG5hbWU9R0VORVJBVE9SPg0KPC9IRUFEPg0KPEJPRFkgYmdDb2xvcj0jZmZmZmYw Pg0KPERJVj48Rk9OVCBjb2xvcj0jMDAwMDAwIHNpemU9Mj5IaS48L0ZPTlQ+PC9ESVY+DQo8RElW PjxGT05UIGNvbG9yPSMwMDAwMDAgc2l6ZT0yPjwvRk9OVD4mbmJzcDs8L0RJVj4NCjxESVY+PEZP TlQgY29sb3I9IzAwMDAwMCBzaXplPTI+V2hhdCBpcyBSVFAgU2N1YmEgPzwvRk9OVD48L0RJVj4N CjxESVY+PEZPTlQgY29sb3I9IzAwMDAwMCBzaXplPTI+PC9GT05UPiZuYnNwOzwvRElWPg0KPERJ Vj48Rk9OVCBjb2xvcj0jMDAwMDAwIHNpemU9Mj5UaGFua3MuPC9GT05UPjwvRElWPg0KPERJVj4m bmJzcDs8L0RJVj4NCjxESVY+PEZPTlQgY29sb3I9IzAwMDAwMCBzaXplPTI+ZW1haWwgOiA8QSAN CmhyZWY9Im1haWx0bzp5aXl1bmdAbW1sYWIuc251LmFjLmtyIj55aXl1bmdAbW1sYWIuc251LmFj LmtyPC9BPjwvRk9OVD48L0RJVj4NCjxESVY+PEZPTlQgY29sb3I9IzAwMDAwMCBzaXplPTI+PC9G T05UPiZuYnNwOzwvRElWPjwvQk9EWT48L0hUTUw+DQo= ------=_NextPart_000_0006_01BE7426.6798D0C0-- From hasnaoui_z@excite.com Mon Mar 22 08:53:58 1999 From: hasnaoui_z@excite.com (zouheir hasnaoui) Date: Mon, 22 Mar 1999 00:53:58 PST Subject: ns-question? Message-ID: <922092838.18762.557@excite.com> hello, I am a student in a high school of computer sciences, I am working on a project about congestion on Internet. I want to use ns-2 to simulate an algorithm that consists of using congestion metric's when routing the packet. the metric is caculated based on congestion level in the routers. then, it is transmitted between routers by the ACK packets. i want to know how can i modify the routing table to use the congestion metric that can changed dynamically. My respect and great salutaion. waiting for your reply thank you for your help. _______________________________________________________ Get your free, private email at http://mail.excite.com/ From joumdane@my-dejanews.com Mon Mar 22 12:59:05 1999 From: joumdane@my-dejanews.com (Joumdane Abdelhamid) Date: Mon, 22 Mar 1999 04:59:05 -0800 Subject: problem with sgb2ns and mcast5.tcl Message-ID: This is a multi-part message in MIME format. You need a MIME compliant mail reader to completely decode it. --=_-=_-KMKJPAFOGIHABAAA Content-Type: text/plain; charset=us-ascii Content-Length: 1880 Content-Transfer-Encoding: 7bit Hi, Lazraq To generate large simulation graphs, I use gt-itm which generates graphs in SGB format, so I use the sgb2ns. I'm using a binary release of gt-itm, which comes with a library needed by sgb2ns. I attached both file : gt-itm_sgb2ns-linux.tar. This arhcive countain the binaries for linux in gt-itm/bin. You can find itm and sgb2ns in this directory. For your second problem, indeed I sent an email about this specific file. I was asked to try with the newest release of ns, but in vain. I have the same problem. The origin of the problem is in the file ~/tcl/mcast/BST.tcl. While the init method of the Class BST defined in this file requires two arguments, when you put one argument the interpreter asks for the second argument. And when you put two arguments it says too many arguments which is a bit starnge to my mind. So if anyone's got a clue on it, don't hesitate to lighten the situation. -- On Sun, 22 Mar 1998 10:37:13 lazrak wrote: >Hi , >I have to create a large topology based in method " Transit-Stub" , But >when i execute "make all" in order to create the executable "sgb2ns" it >gives me an error message : >" ...... undefined reference to 'restore_graph' " > > >I have also a probem with running the file mcast5.tcl it gives a follow >error message : >" using backward compatible Agent/CBR; use Application/Traffic/CBR >instead > ... > using backward compatible Agent/CBR; use Application/Traffic/CBR >instead > called "_o478" with too many arguments > (Object next line 1) > invoked from within >"$self next $sim $node" > Any one can help me? > >Thanks >-------------------------------- >Lazrak Mohamed >e mail: lazraq@emi.ac.ma >------------------------------- > -----== Sent via Deja News, The Discussion Network ==----- http://www.dejanews.com/ Easy access to 50,000+ discussion forums --=_-=_-KMKJPAFOGIHABAAA Content-Type: application/x-gzip; name="gt-itm_sgb2ns-linux.tar.gz" Content-Length: 799557 Content-Transfer-Encoding: base64 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