Skip navigation.

Southern Park

Programming Environment for NS2


It seems that not any programming environment could support both C++ and TCL. I asked my good friends James, a very decent programmer in Intel, "Which programming environment do you like most for Linux?", he answered clearly and without a second "vim". I am preparing for the future project here, so I want to find a suitable method for my programming on NS2.
I choose the "Putty + Exceed + Gvim".
In order to make nam run on windows, exceed is utilized for the Graphic Interface. With its help, all the graphic application could be shown in windows system. All you need to do is just install exceed, and double click putty. and select the "Enable X11 Forwarding" in "SSH->X11" field. After you log in the server, you could input "gvim" to test whether it works.
Then you may modify the C++ and TCL code in NS2, then make in putty and run your script.

What is a hash function?

From http://www.x5.net/faqs/crypto/q94.html

A hash function H is a transformation that takes a variable-size input m and returns a fixed-size string, which is called the hash value h (that is, h = H(m)). Hash functions with just this property have a variety of general computational uses, but when employed in cryptography the hash functions are usually chosen to have some additional properties.

The basic requirements for a cryptographic hash function are:

the input can be of any length,
the output has a fixed length,
H(x) is relatively easy to compute for any given x ,
H(x) is one-way,
H(x) is collision-free.
A hash function H is said to be one-way if it is hard to invert, where "hard to invert" means that given a hash value h, it is computationally infeasible to find some input x such that H(x) = h.

If, given a message x, it is computationally infeasible to find a message y not equal to x such that H(x) = H(y) then H is said to be a weakly collision-free hash function.

A strongly collision-free hash function H is one for which it is computationally infeasible to find any two messages x and y such that H(x) = H(y).

The hash value represents concisely the longer message or document from which it was computed; one can think of a message digest as a "digital fingerprint" of the larger document. Examples of well-known hash functions are MD2 and MD5 (see Question 99) and SHA (see Question 100).

Perhaps the main role of a cryptographic hash function is in the provision of digital signatures. Since hash functions are generally faster than digital signature algorithms, it is typical to compute the digital signature to some document by computing the signature on the document's hash value, which is small compared to the document itself. Additionally, a digest can be made public without revealing the contents of the document from which it is derived. This is important in digital timestamping (see Question 108) where, using hash functions, one can get a document timestamped without revealing its contents to the timestamping service.

Offered by Intel Beijing, on board as an intern.

This is the first time for me to work as an intern. Intel Beijing is a much more differnt place from my lab. It took me nearly 2 weeks to struggle here, and now I am quite familiar with this corp. I am now in Raycom 5th Floor, Beijing. The offical contract will be signed on July 31st. I am now a research member of Intel IT Research, the manager here is Kai Miao, a interesting but nice guy. For the last two weeks I participate in the project "OverMesh", there are 6 members in it: Passion, James, Kai, Chao, Xu, and me. We are now focusing on a high quality simulation on UWB Mesh Network.

Here I found some useful materials on how to make matlab work with ns2:
http://www.csse.monash.edu.au/~klangjai/index_files/Page327.htm

This helpful for us to make a high quality propagation model. I am going to insert this Matlab module into NS2, and the module will be excuted everytime a new TCL script runs.

As for my recent research, I divide the whole project into three parts:
1, A good PHY lay implementation for UWB on NS2, including modulation method and so on.
2, A Matlab-based propogation model.
3, A MAC protocol for UWB, which contains the Mesh routing ability.

Some related work could be our base stone, such as:
[1] Matlab for NS2, http://www.cse.msu.edu/~wangbo1/ns2/nshowto3.html
[2] UWB implementation for NS2: http://icawww1.epfl.ch/uwb/ns-2.html#download
etc.

Intel is really interesting, passion told me that somebody has implement the mesh part for OPNet, another simulation tool. But they do not agree to share the code with us. It seems that we will have to finish that part by ourselve.
I guess if we could finish this project, I am able to finish the MIMO Mesh for my own research interests. Because the difference between MIMO Mesh and UWB Mesh is just MIMO Vs. UWB. The implementation for both of them on ns2 may be only different on the PHY Module.
Here is a link for MIMO communication architecture by Intel Israel Mobile Lab:
http://developer.intel.com/technology/itj/pix/download_this_pdf

Rejected! by MSRA - Microsoft Research Center, Asia


I applied for a summer internship at MSRA. Without a written examination, I asked my friend to send my resume to a mentor there. Monday, I received the interview on my way to supper. The interview lasted for 40 minutes, and I showed all my research activities to that mentor. Though he is likely interested in my research work, I did not feel good. He did ask me some sharp questions about my work. I mentioned the 9Square, Grey Area, and balanced multi-path routing in mesh network.
This morning, I wrote a email to ask about the internship, the reply was negative.
Hm..., seems a good summer vocation is waiting for me.
Maybe, that's not a bad idea....

Grey Area Experiment 2006-6-13

Today, Zhang Lei and I collect the first bucket of data for our "Grey Area" Project.
It aims at discovering an area, in which RTS/CTS messages work but large data packets do not.

Configure file for X11 on AS 4.0 of My Laptop Lenovo(with Intel 915)

As for the Graphic system for my lenovo is based on Intel 915, some new configurations are needed.
xorg.conf
The above file do let my laptop work on 1024x768@85Hz without any problem.

Compare 802.11 with 802.16 and 802.15


My group choses 802.11 as the research topic. Why don't we have a look at 802.16 and UWB?

Wi-Fi: 802.11 may be not the best way for last mile connection. The use of 802.11-based hardware for metropolitan-sized networks decreases costs, but 802.11 has performance limitations when supporting larger numbers of users needing guaranteed bandwidth. In addition, RF interference is often a significant problem with 802.11 when covering large areas due to license free operation. A competitor may install an 802.11 network which interferes with yours, and users will suffer due to sporadic, poor performance. There's really nothing you can do about that because there are no legal grounds to remedy the situation. I summary it as follows: 802.11 is a free frequency, it is not controled by govenment and orgination. As we get the free service, we have to endure all the private activities. We need a method to make users of 802.11 keep friendly with each other. Maybe cognitive network is a good start.

WiMAX: 802.16 is on its way. 802.16 supports point-to-multipoint architecture in the 10-66 GHz range, transmitting at data rates up to 120Mbps. At those frequencies, transmission requires line-of-site, and roofs of buildings provide the best mounting locations for base and subscriber stations. The base station connects to a wired backbone and can transmit wirelessly up to 30 miles to a large number of stationary subscriber stations, possibly hundreds.
To accommodate non-line-of-site access over lower frequencies, IEEE published 802.16a in January 2003, which includes support for mesh architecture. 802.16a operates in the licensed and unlicensed frequencies between 2GHz and 11GHz using orthogonal frequency division multiplexing (OFDM), which is similar to 802.11a and 802.11g.
The 802.16 medium access control (MAC) layer (define) supports many different physical layer specifications, both licensed and unlicensed. Through the 802.16 MAC, every base station dynamically distributes uplink and downlink bandwidth to subscriber stations using time-division multiple access (TDMA). This is a dramatic difference from the 802.11 MAC, with current implementations operating through the use of carrier sensing mechanisms that don't provide effective bandwidth control over the radio link.
However, there is not any good product for you to set up a long range 802.16 WiMAX network.

UWB: 802.15 provide higher performance for short range transmission. Ultra-Wideband (UWB) technology brings the convenience and mobility of wireless communications to high-speed interconnects in devices throughout the digital home and office. Designed for short-range, wireless personal area networks (WPANs), UWB is the leading technology for freeing people from wires, enabling wireless connection of multiple devices for transmission of video, audio and other high-bandwidth data.
UWB, short-range radio technology, complements other longer range radio technologies such as Wi-Fi*, WiMAX, and cellular wide area communications. It is used to relay data from a host device to other devices in the immediate area (up to 10 meters, or 30 feet).
How UWB Works?
A traditional UWB transmitter works by sending billions of pulses across a very wide spectrum of frequencies several GHz in bandwidth. The corresponding receiver then translates the pulses into data by listening for a familiar pulse sequence sent by the transmitter. Specifically, UWB is defined as any radio technology having a spectrum that occupies a bandwidth greater than 20 percent of the center frequency, or a bandwidth of at least 500 MHz.

Modern UWB systems use other modulation techniques, such as Orthogonal Frequency Division Multiplexing (OFDM), to occupy these extremely wide bandwidths. In addition, the use of multiple bands in combination with OFDM modulation can provide significant advantages to traditional UWB systems.

UWB's combination of broader spectrum and lower power improves speed and reduces interference with other wireless spectra. In the United States, the Federal Communications Commission (FCC) has mandated that UWB radio transmissions can legally operate in the range from 3.1 GHz up to 10.6 GHz, at a limited transmit power of -41dBm/MHz. Consequently, UWB provides dramatic channel capacity at short range that limits interference.
Today, most computer and consumer electronic devices—everything from a digital camcorder and DVD player to a mobile PC and a high-definition TV (HDTV)—require wires to record, play or exchange data. UWB will eliminate these wires, allowing people to "unwire" their lives in new and unexpected ways. Through UWB:
1, An office worker could put a mobile PC on a desk and instantly be connected to a printer, scanner and Voice over IP (VoIP) headset.
2, All the components for an entire home entertainment center could be set up and connected to each other without a single wire.
3, A digital camcorder could play a just-recorded video on a friend's HDTV without anyone having to fiddle with wires.
4, A portable MP3 player could stream audio to high-quality surround-sound speakers anywhere in the room.
5, A mobile computer user could wirelessly connect to a digital projector in a conference room to deliver a presentation. 6, Digital pictures could be transferred to a photo print kiosk for instant printing without the need of a cable.

Conclude
If we take a look into all these three technologies, it will be easy for us to find that they are different in transmission range, rate, and they work for different situation. Is it possible to melt all these technologies into one mesh architecture. A Harmonious, Heterogeneous, High Performance mesh network should be the ultimate goal.


BT-WMN: Balance Transmission on [Multi-Channel, Multichannel-Radio, MIMO] Wireless Mesh Network


I finished "Pipelined prototype for 2.4GHz MIMO mesh network", and I submitted it
to ICCS2006. The conference will be held in Singapore. I have spent this semester for MIMO mesh network. Considering MIMO’s good features, it is good at providing parallel transmissions in a mesh topology.
After some discussion with my teammates, I’ve got some new thoughts as follows: If we introduce multi-channel & multi-radio & MIMO, we could provide more parallel streams for the mesh network. A transmitter could send out more than one parallel streams through different radios on non-overlapped channels. A good feature of mesh network is the rich connectivity. There are several non-overlapped paths from the source router to the destination router, and these paths may contain no shared link. So we could utilize these paths to transmit frames from
the source simultaneously. The quality of these links may be different. In this idea not the best path will be chosen as the one to transmit all the packets, but all available paths will work together.
Traditional idea for routing uses many metrics to select a best path from the source to the destination, and all the load will be added to the links contained in the path, while other links may not be hot at all. So we can distribute the load to more parts of the whole topology rather than a single path. Multi-channel & multi-radio & MIMO will play a very important role in this idea; they will make more parallel links work at one time. Moreover, we need a smart method to manage the UDP and TCP distribution and aggregation problems within this idea.
Could anybody give me some advice? Is it a potential point for my work? Did any body publish related or same work?

Team Report 2006-6-1

A new one for hyacinth for NS-2.29


Greetings, friends focusing on multi-channel on 2.29:
The " make hyacinth run on NS 2.29 " does has some errors. As "swt556" mentioned, some more modification should be added. The new version was finished several a month ago, and some test version was finished correctly. Because I was focusing on my recent paper, my blog was not updated for several days.
I looked into the NS2.29, and found that some parts are different from ns2.19. To support multichannel, the following parts should be modified:

1, All the extensions of hyacinth-on-2.19, including the routing protocol "manual.cc", the multi-channel, multi-radio support in ns-lib.tcl & ns-mobilenode.tcl, and some change in tcp, udp.
2, The arp.cc should be changed. The orginal ARP part works well in single channel, but in multichannel-multihop network the ARP entry in neighbour nodes' arp table will be updated by error. The function arpinput() and arpresolve() are modified.
3, The wireless.cc in ns-2.29 is designed for single channel. Especially, the node list listening on one channel. The original 2.29 maintain a table for the nodes listening on one channel, the only channel! If we want to add more channels, we should correct this part.

Download

ns-2[1].29-mini-version.rar
I delete some files to reduce the size of tar ball,
including the two biggest directory, the "/tcl/ex/" and "/tcl/test". It is about
20MB, I don't know whether you could receive it without any problem.
It only works on ns2.29, which I installed on RedHat Linux 2.4.20. As for the
problem you got, it is mainly because that 2.29 is quite different from ns2.19b,
the one hyacinth was developed.
December 2009
S M T W T F S
November 2009January 2010
1 2 3 4 5
6 7 8 9 10 11 12
13 14 15 16 17 18 19
20 21 22 23 24 25 26
27 28 29 30 31