2009年3月30日
For HSDPA in WCDMA/UMTs, UE will be assigned a number of SF16 channelization codes by the base station during fast scheduling.
Assuming a theoretical effective code rate of 1.0 and 16QAM modulation, the data rate achieved by each SF16 channelization code is given by
Chip rate / SF * (bits per modulation symbol) * (code rate) = 3.84M / 16 * 4 * 1.0 = 0.96 Mb/s.
while the peak data rate is 0.96 * N Mb/s, where N is the number of assigned SF16 code blocks.
If the UE is assigned 15 codes, which is the maximum possible number of codes since the 1 remaining SF16 or 16*SF256 channelization code resource has to be reserved for HS-SCCH, associated DPCH and downlink common control channels, the peak rate is 0.96*15=14.4 Mb/s.
So, why is the peak rate only 7.2 Mb/s for a UE, as alleged in commercials presented by China Unicom, the only WCDMA carrier in the Heaven Kingdom?
The answer lies in the HS-DSCH physical layer category. Only UEs with a capability to use up to 15 codes, such as Category 9 or 10 UEs, can reach the maximum data rate of 14.4Mb/s. Best UEs available on the market are usually Category-8 UEs that can only use up to 10 codes, resulting in a peak rate of 0.96*10=9.6 Mb/s. So why is it 7.2Mb/s?
By consulting 3GPP specification 25.306 (Table 5.1a), you'll find that for a UE that can use up to 10 codes, the possible HS-DSCH transport block is 14,411 bits. For a TTI of 2ms, the peak rate is 14411bits/2ms ~= 7.2 Mb/s, whose corresponding physical layer data rate is 9.6Mb/s, where the 2.4 Mb/s in difference is consumed by channel coding and other physical layer overhead.
Now we have found the answer. The 7.2Mb/s peak rate alleged by China Unicom is actually the MAC-hs throughput for Category-8 terminals.
A mathemastic explation for elastic traffic.
reciprocal
mutual
- CPCH is intended to carry packet-based user data
in the uplink. The reciprocal channel providing the data in the
downlink direction is the FACH. ([Holma 2007] P. 95)
crop up
to occur or appear, esp unexpectedly
- The basic reason behind a handover crops up when the air
interface connection no loger fulfills the desired criteria set for it.
([Kaaranen 2005] P.113)
Literature
Notes:GSM
<伊落丹> illidan.modeler [at] gmail.com
Northern Capital, Republic of Pandaren
Of the Net, by the Net, for the Net
History
In 1982, the European Conference of Postal and Telecommunications Administrations (CEPT) created the Groupe Spécial Mobile (GSM) to develop a standard for a mobile telephone system that could be used across Europe.
In 1987, a memorandum of understanding was signed by 13 countries to develop a common cellular telephone system across Europe. Finally the system created by SINTEF lead by Torleiv Maseng was selected.
In 1989, GSM responsibility was transferred to the European Telecommunications Standards Institute (ETSI) and phase I of the GSM specifications were published in 1990. The first GSM network was launched in 1991 by Radiolinja in Finland with joint technical infrastructure maintenance from Ericsson.
By the end of 1993, over a million subscribers were using GSM phone networks being operated by 70 carriers across 48 countries.
Network structure
The network behind the GSM seen by the customer is large and
complicated in order to provide all of the services which are required.
It is divided into a number of sections and these are each covered in
separate articles.
Packet control unit
The packet control unit (PCU) is a late addition to the GSM
standard. It performs some of the processing tasks of the BSC, but for
packet data. The allocation of channels between voice and data is
controlled by the base station, but once a channel is allocated to the
PCU, the PCU takes full control over that channel.
The PCU can be built into the base station, built into the BSC or
even, in some proposed architectures, it can be at the SGSN site. In
most of the cases, the PCU is a separate node communicating extensively
with the BSC on the radio side and the SGSN on the Gb side.
Physical and Logical Channels
Traffic Channels (TCHs)
Full-Rate TCH
Full-Rate Speech Channel (TCH/FS) : Carries speech digitized at a raw data rate of 13 kbps, sent at 22.8 Kbps.
Full-Rate Data Channel for 9600 bps (TCH/F9.6) : Carries data sent at 9.6 Kbps. With FEC code, the data is sent at 22.8 Kbps.
Full-Rate Data Channel for 4800 bps (TCH/F4.8) : Carries data sent at 4.8 Kbps. With FEC code, the data is sent at 22.8 Kbps.
Full-Rate Data Channel for 2400 bps (TCH/F2.4) : Carries data sent at 2.4 Kbps. With FEC code, the data is sent at 22.8 Kbps.
Half-Rate TCH
Half-Rate Speech Channel (TCH/HS) : Carries speech digitized at 6.5 Kbps, sent at 11.4 Kbps.
Half-Rate Data Channel for 4800 bps (TCH/H4.8) : Carries data sent at 4.8 Kbps. With FEC code, the data is sent at 11.4 Kbps.
Full-Rate Data Channel for 2400 bps (TCH/H2.4) : Carries data sent at 2.4 Kbps. With FEC code, the data is sent at 11.4 Kbps.
(For more details about FEC channel coding, turn to [7].)
Control Channels (CCHs)
Broadcast Channels (BCHs)
Broadcast Control Channel (BCCH) - DOWNLINK -
Frequency Correction Channel (FCCH) - DOWNLINK -
Synchronization Channel (SCH) - DOWNLINK -
Common Control Channels (CCCHs)
Paging Channel (PCH) - DOWNLINK -
Random Access Channel (RACH) - UPLINK -
Access Grant Channel (AGCH) - DOWNLINK -
Dedicated Control Channels (DCCHs)
Stand-alone Dedicated Controls (SDCCHs) - UPLINK/DOWNLINK -
Slow Associated Control Channel (SACCH) - UPLINK/DOWNLINK -
Fast Associated Control Channel (FACCHs) - UPLINK/DOWNLINK -
BCHs
- BCCH:
This channel contains system parameters needed to identify the network
and gain access. These paramters include the Location Area Code (LAC),
the Mobile Network Code (MNC), the frequencies of neighboring cells,
and access parameters.
- FCCH: This channel is used by the MS as a frequency reference. This channel contains frequency correction bursts.
- SCH:
This channel is used by the MS to learn the Base Station Information
Code (BSIC) as well as the TDMA frame number (FN). This lets the MS
know what TDMA frame they are on within the hyperframe.
CCCHs
- PCH:
This channel is used to inform the MS that it has incoming traffic. The
traffic could be a voice call, SMS, or some other form of traffic.
- RACH:
This channel is used by a MS to request an initial dedicated channel
from the BTS. This would be the first transmission made by a MS to
access the network and request radio resources. The MS sends an Access
Burst on this channel in order to request access
- AGCH: This channel is used by a BTS to notify the MS of the assignement of an initial SDCCH for initial signaling.
DCCHs
- SDCCH: This channel is used for signalling and call setup between the MS and the BTS.
- SACCH:
This channel is a continuous stream channel that is used for control
and supervisory signals associated with the traffic channels.
- FACCH:
This channel is used for control requirements such as handoffs. There
is no TS and frame allocation dedicated to a FAACH. The FAACH is a
burst-stealing channel, it steals a Timeslot from a TCH.
Frame Structure
For
a frame for traffic channe, a super frame consists of 51 multiframe
that is made of 26 TDMA frames. For a frame for control channel, a
super frame consists of 26 multiframe that contains 51 TDMA frames.
Each TDMA frame spans 4.615 ms, consisting of 8 time slots, during each
of which a user sends data called "burst". Of a normal burst, the
payload (information-bearing part) occupies two 57 bit blocks.
Data Rates
The gross data rate is 32500bits/120ms = 270.83 kbit/s, resulting in 270.83/8 =
33.854 kbit/s per user. User data is actually sent at
24.7 kbit/s (57 bits * 2 / 4.615ms), excluding the overhead in the burst.
Slow Frequency Hopping
GSM
employs slow frequency hopping (SFH) to mitigate the effects of
multipath fading and interference. Each burst belonging to a particular
physical channel will be transmitted on a different carrier frequency
in each TDAM frame. Thus the hopping rate is equal to the frame rate
(i.e.' 217 frames/s). The only physical channels that are not allowed
to hop are the broadcast and common control channels (i.e. the FCH,
SCH, BCCH, PCH and AGCH).
The effect of frequency hopping on interference
In
a non-frequency hopping GSM system, an MS will tend to experience
interference from the same set of MSs in neighbouring co-channel cells.
In a frequency hopped system, the hopping patterns (i.e. the sequence
of transmission frequencies) are different in co-channel cells and the
MS will experience interference from a different set of MSs on each
burst. This effectively randomises the interference and each MS will
experience an average level of interference.
Literature
1. [web] "GSM."
Wikipedia, The Free Encyclopedia. 16 Apr 2009, 16:20 UTC. 18 Apr 2009 <
http://en.wikipedia.org/w/index.php?title=GSM&oldid=284232567>
2. [web] "Base Station subsystem."
Wikipedia, The Free Encyclopedia. 30 Mar 2009, 19:49 UTC. 20 Apr 2009 <
http://en.wikipedia.org/w/index.php?title=Base_Station_subsystem&oldid=280712891>
3. [book] [Rappaport 2001] Section 11.3 "Global System for Mobile"
4. [book] [Tanenbaum 2004] Sec. 2.6.2 "Second-Generation Mobile Phones: Digital Voice"
5. [web] "GSM Network Architecture". 29 Apr 2009. <
http://www.gsmfordummies.com/architecture/arch.shtml >
6. [web] "Logical Channels". 29 Apr 2009. <
http://www.gsmfordummies.com/tdma/logical.shtml >
7. [book] [Steele 2001] Sec. 2.3.9 "Speech transmission"
UMTS (Universal Mobile Telecommuniations System)
<伊落丹> illidan.modeler [at] gmail.com
Northern Capital, Republic of Pandaren
System Architecture
UTRAN
UTRAN, short for
UMTS
Terrestrial
Radio
Access
Network, is a collective term for the
Node B's and
Radio Network Controllers which make up the
UMTS radio access network.
The UTRAN allows connectivity between the
UE (user equipment) and the
core network. The UTRAN contains the base stations, which are called
Node Bs, and
Radio Network Controllers
(RNC). The RNC provides control functionalities for one or more Node
Bs. A Node B and an RNC can be the same device, although typical
implementations have a separate RNC located in a central office serving
multiple Node Bs.
The RNC and its corresponding Node Bs are called the
Radio Network Subsystem (RNS). There can be more than one RNS present in an UTRAN.
Radio Resource Control
RRC handles the
control plane signalling of Layer 3 between the
UEs and
UTRAN.
The major part of the control signalling between UE and UTRAN is RRC messages. RRC messages carry all parameters required to set up, modify and release layer 2 and layer 1 protocol entities. RRC messages also carry in their payload all higher layer signalling (mobility management (MM), connection management (CM), session management (SM), etc.). The mobility of user equipment in the connected mode is controlled by RRC signalling (measurements, handovers, cell updates, etc.).
Literature
1. [web] "UMTS Terrestrial Radio Access Network."
Wikipedia, The Free Encyclopedia. 20 Apr 2009, 09:51 UTC. 21 Apr 2009 <
http://en.wikipedia.org/w/index.php?title=UMTS_Terrestrial_Radio_Access_Network&oldid=284982903>.
2. [book] [Holma 2007] Section 7.8 "The Radio Resource Control Protocol"
3. [web] "Radio Resource Control."
Wikipedia, The Free Encyclopedia. 12 Feb 2009, 04:30 UTC. 5 May 2009 <
http://en.wikipedia.org/w/index.php?title=Radio_Resource_Control&oldid=270157640>.
Free Space Path-loss as in ns2
<伊落丹> illidan.modeler [at] gmail.com
Northern Capital,
Republic of Pandaren
Of the Net, by the Net, for the Net
Free space
path-loss is a major factor when considering the attenuation of EM
signal strength. Basically it's defined by the following equation:
Pt: transmitted power
Pr: received power
d: the distance between transmitter and receiver
f: the signal frequency
c: light speed
Recast the equation in dB form, we get
FSPL (dB) = -147.56 + 20*log10(d) + 20*log10(f)
|
Take the FSPL of a IEEE 802.11 WLAN signal for example. The relation between FSPL and distance is depicted below:
where the transmission power is about 10 mW, without considering antenna gain and other attenuation.
In ns2, path loss, which is an effect of the physical layer, is handled by class
WirelessPhy (mac/wirelss-phy.{h,cc}).
WirelessPhy calculates the path loss in its method sendUp(), by calling FreeSpace::Pr(PacketStamp *t, PacketStamp *r, WirelessPhy *ifp).
FreeSpace and its parent
Propagation are defined in mobile/propagation.{h, cc}.
The code snipit carrying out the call to FreeSpace's method is given below (wireless-phy.cc):
if(propagation_) {
s.stamp((MobileNode*)node(), ant_, 0, lambda_);
Pr = propagation_->Pr(&p->txinfo_, &s, this);
if (Pr < CSThresh_) {
pkt_recvd = 0;
goto DONE;
}
|
The real meat of the path loss calculation is
Propagation's
method Friis(), which not only deals with free-space path loss but also
considers antenna gains. (Note: By my obervation, antenna gain is
actually 0 dB by default, revealed in Antenna::getTxGain().)
For a description of path loss and link budget analysis, turn to sub-section 5.2 of [Sklar 2001].
References
1. [Book] [Sklar 2001]
GPRS and EDGE
<伊落丹> illidan.modeler [at] gmail.com
Northern Capital,
Republic of Pandaren
Of the Net, by the Net, for the Net
General packet radio service (GPRS) is a packet oriented mobile data service available to users of the 2G cellular communication systems global system for mobile communications (GSM), as well as in the 3G systems. In the 2G systems, GPRS provides data rates of 56-114 kbit/s.2G cellular systems combined with GPRS are often described as 2.5G. It provides moderate speed data transfer, by using unused time division multiple access (TDMA) channels.
GPRS data transfer is typically charged per megabyte of traffic transferred, while data communication via traditional circuit switching
is billed per minute of connection time, independent of whether the
user actually is using the capacity or is in an idle state. GPRS is a best-effort packet switched service, as opposed to circuit switching, where a certain quality of service (QoS) is guaranteed during the connection for non-mobile users.
Originally there was some thought to extend GPRS to cover other
standards, but instead those networks are being converted to use the
GSM standard, so that GSM is the only kind of network where GPRS is in
use. GPRS is integrated into GSM Release 97 and newer releases. It was originally standardized by European Telecommunications Standards Institute (ETSI), but now by the 3rd Generation Partnership Project (3GPP).
GPRS was developed as a GSM response to the earlier CDPD and i-mode packet switched cellular technologies.
The diagram that depicts the interfaces and key components is shown below;
Interfaces in the GPRS network
Gb
Interface between the base station subsystem and the SGSN the transmission protocol could be Frame Relay or IP.
Gn
IP Based interface between SGSN and other SGSNs and (internal)
GGSNs. DNS also shares this interface. Uses the GTP Protocol.
Gp
IP based interface between internal SGSN and external GGSNs.
Between the SGSN and the external GGSN, there is the border gateway
(which is essentially a firewall). Also uses the GTP Protocol.
Ga
The interface servers the CDRs (accounting records) which are
written in the GSN and sent to the charging gateway (CG). This
interface uses a GTP-based protocol, with modifications that supports
CDRs (Called GTP' or GTP prime).
Gr
Interface between the SGSN and the HLR. Messages going through this interface uses the MAP3 protocol.
Gd
Interface between the SGSN and the SMS Gateway. Can use MAP1, MAP2 or MAP3.
Gs
Interface between the SGSN and the MSC (VLR). Uses the BSSAP+
protocol. This interface allows paging and station availability when it
performs data transfer. When the station is attached to the GPRS
network, the SGSN keeps track of which routing area (RA) the station is
attached to. An RA is a part of a larger location area (LA). When a
station is paged this information is used to conserve network
resources. When the station performs a PDP context, the SGSN has the
exact BTS the station is using.
Gi
IP based interface between the GGSN and a public data network (PDN)
either directly to the Internet or through a WAP gateway.
Ge
The interface between the SGSN and the service control point (SCP); uses the CAP protocol.
Gx
The on-line policy interface between the GGSN and the charging
rules function (CRF). It is used for provisioning service data flow
based charging rules. Uses the diameter protocol.
Gy
The on-line charging interface between the GGSN and the online
charging system (OCS). Uses the diameter protocol (DCCA application).
Gz
The off-line (CDR-based) charging interface between the GSN and the CG. Uses GTP'.
Gmb
The interface between the GGSN and the broadcast-multicast service center (BM-SC), used for controlling MBMS bearers..
Enhanced Data Rates for GSM Evolution (EDGE)
Transmission techniques
In addition to Gaussian minimum-shift keying (GMSK), EDGE uses higher-order PSK/8 phase shift keying
(8PSK) for the upper five of its nine modulation and coding schemes.
EDGE produces a 3-bit word for every change in carrier phase. This
effectively triples the gross data rate offered by GSM. EDGE, like GPRS,
uses a rate adaptation algorithm that adapts the modulation and coding
scheme (MCS) according to the quality of the radio channel, and thus
the bit rate and robustness of data transmission. It introduces a new
technology not found in GPRS, Incremental Redundancy,
which, instead of retransmitting disturbed packets, sends more
redundancy information to be combined in the receiver. This increases
the probability of correct decoding.
EDGE can carry data speeds up to 236.8 kbit/s (with end-to-end latency of less than 150 ms) for 4 timeslots
(theoretical maximum is 473.6 kbit/s for 8 timeslots) in packet mode.
This means it can handle four times as much traffic as standard GPRS. EDGE meets the International Telecommunications Union's requirement for a 3G network, and has been accepted by the ITU as part of the IMT-2000 family of 3G standards. It also enhances the circuit data mode called HSCSD, increasing the data rate of this service.
1. [Web] "GPRS Core Network."
Wikipedia, The Free Encyclopedia. 25 Apr 2009, 11:47 UTC. 28 Apr 2009 <
http://en.wikipedia.org/w/index.php?title=GPRS_Core_Network&oldid=286027496>.
2. [Web] "Enhanced Data Rates for GSM Evolution."
Wikipedia, The Free Encyclopedia. 16 Apr 2009, 22:13 UTC. 17 Apr 2009 <
http://en.wikipedia.org/w/index.php?title=Enhanced_Data_Rates_for_GSM_Evolution&oldid=284298553>.
Notes::small-scale fading
<伊落丹> illidan.modeler [at] gmail.com
Northern Capital,
Republic of Pandaren
Of the Net, by the Net, for the Net
What
Fading is the distortion that a carrier-modulated telecommunication signal experiences over certain propagation media.
Propagation
models that characterize the rapid fluctions of the received signal
strength over very short travel distances (a few wavelengths) or short
time duration (on the order of seconds) are called
small-scale or
fading models. (Page 106 of [3])
Why
In wireless systems, fading is due to multipath propagation and is sometimes referred to as
multipath induced fading. [1]
How
The effects of fading can be combated by using
diversity
to transmit the signal over multiple channels that experience
independent fading and coherently combining them at the receiver.
Miscellaneous
The
coherence time is a measure of the minimum time required for
the magnitude change of the channel to become decorrelated from its
previous value.
There's a
good summary of large-scale and small-scall fadings on Page 40 and 41 of [5].
References
- Web http://en.wikipedia.org/wiki/Fading
- Web http://www.ylesstech.com/terminology.php?letter=all&id=15
- [Rappaport 2001]
- [Goldsmith 2005]
- [Tse 2005]
[Bertsekas 1992] Bertsekas, D.P. and Gallager, R.G.::"
Data Networks"
2nd Ed. Prentice Hall, 1992
amazon
[Bi 2006] Bi Guangguo
(adapted). "
Digital Communication Essentials" Beijing: Higher
Education Press, 2006
Original [Sklar 2001]
amazon.cn
[Chevallier 2006] C. Chevallier, C. Brunner, and A. Garavaglia :: "
WCDMA
(UMTS) Deployment Handbook" John Wiley and Sons, 2006
dangdang
[Chuah 2006] Chuah, M. C., and Zhang, Q., :: "
Design and Performance
of 3G Wireless Networks and Wireless LANs". Springer, 2006
Reprint:: Beijing: Science Press, 2007
dangdang
[Dahlman 2007] E. Dahlman, S. Parkvall, J. Sköld, et al. ::
"3G
Evolution--HSPA and LTE for Mobile Broadband". Academic Press, Jul
2007
[Gast 2005] Gast, M.S.::
"802.11 Wireless Networks: the Definitive
Guide" 2nd Ed. O'Rellay Media, Inc. 2005
[Goldsmith 2005] Goldsmith, A.J.::
"Wireless Communications", Cambridge University Press, Aug 2005
[Holma
2006] Holma H., and Toskala, A. [editors] :: "
HSDPA/HSUPA for UMTS:
High Speed Radio Access for Mobile Communications". John Wiley &
Sons, 2006
amazon
[Holma 2007] Holma H., and Toskala, A.
[editors] ::
"WCDMA for UMTS -- HSPA Evoluation and LTE" 4/e.
John Wiley & Sons, 2007
[Kaaranen 2005] Kaaranen, H.,
Ahtiainen, A., Laitinen, L., et al.::
"UMTS Networks" 2/e. John
Wiley and Sons, 2005
[Kurose 2002] Kurose, J.F., and Ross, K.W.::
"Computer Networking:
A Top-Down Approach Featuring the Internet". 2nd Ed. Addison
Wesley / Pearson Education, 2002
china-pub amazon
[Proakis 2000] Proakis, J.G.:: "
Digital
Communications".
4th Ed. McGraw-Hill, 2000
[Rappaport 2001] Rappaport, T.S.::
"Wireless Communications:
Principles and Practice", 2nd Ed, Prentice Hall, Dec 2001
[Rogers 2003] Rogers, G., and Edwards, J.:: "
An Introduction to
Wireless Technology". Prentice Hall, 2003
Reprint: Tsinghua University Press, 2005
china-pub
[Sklar 2001] Sklar, B. :: "
Digital
Communications: Fundamentals and Applications",
2nd Ed. Prentice Hall, 2001
[Stalling 2004] Stalling, W. ::
"Wireless Communications &
Networks" 2nd Ed. Prentice Hall, 2004
china-pub
[Steele 2001] Steele, R., Lee, C., and Gould, P. ::
"GSM, cdmaOne and
3G Systems". John Wiley & Sons, 2001
amazon
[Tanenbaum 2004] Tanenbaum, A.S.::
"Computer Networks", 4/e.
Prentice Hall/Pearson Education, 2004
Reprint: Tsinghua University Press, 2004
[Tranter 2004] Tranter, W.H., Shanmugan, K.S., Rappaport T.S., Kosbar,
K.L. :: "
Principles of Communication
Systems Simulation with Wireless Applications". Prentice Hall,
2004
[Tse 2005] Tse, D., and Viswanath, P. :: "
Fundamentals of Wireless Communication". Cambridge
University Press, May 2005
[Weiss 2006] Weiss, M.A. ::
"Data Structures and Algorithm Analysis
in Java".
2/e. Addison Wesley / Pearsoon Edution, In.c, Mar.
2006
Reprint: China Machine Press, 2007
Amazon
中文资料:
[Han 2009] 韩斌杰,杜新颜,张建斌.
"GSM原理及其网络优化".
第2版.
机械工业出版社,2009
[Ke 2009] 柯志亨,程荣祥,邓德隽. "
ns2仿真实验--多媒体和无线网络通信".
电子工业出版社,2009
[Liu 2005] 刘树棠/译.
"现代通信系统(MATLAB版)".第2版. 电子工业出版社 2005.
原书:Proakis, J.G., et al.
"Contemporary Communications Systems Using
MATLAB and Simulink" 2nd Ed.
[Xie 2003] 谢希仁.
“计算机网络”.第4版. 电子工业出版社 2003
[Zhou 2002] 周炯槃
庞泌华 续大我 等.
"通信原理". 北京邮电大学出版社 2002
[Zhou 2008] 周炯槃 庞泌华 续大我 等.
"通信原理".
第3版. 北京邮电大学出版社 2008
Physical Layer
Functions:
Encoding/decoding of signals (PSK, QAM, etc)
Preamble generation/removal (for synchronization)
Bit transimission/reception
Sublayers:
Pysical Layer Convergence Procedure (
PLCP)
Physical Medium Dependent (
PMD) sublayer
PLCP
map the MAC frame onto the medium, straddle between MAC and PHY, add a number of fields to the frame as it's transmitted into the air
PMD
transimit the frame
[References]
[Gast 2005]
[Stalling 2004]
. | OMNeT++ | ns-2 |
Flexibility |
OMNeT++ is a flexible and generic simulation framework. One can
simulate anything that can be mapped to active components that
communicate by passing messages. For example, it can be used for
simulating queueing networks, multiprocessor systems, hardware
architectures (routers, optical switches, file servers etc.), or
business processes. Several model frameworks available for different
problem domains (INET Fw, Mobility Fw, OverSim, NesCT, MACSimulator,
etc.) |
ns-2 has been designed as a (TCP/IP) network
simulator, and it difficult to impossible to simulate things other than
packet-switching networks and protocols with it. It has highly detailed
and hardcoded concepts about nodes, agents,
protocols, links, packet representation, and network adresses etc,
which is good, but makes it very hard if you want to do things a little
differently. |
Programming Model |
Object-oriented, event-driven simulator, written in C++. Topology
descriptions are either written as text files (NED language), or can be
dynamically created in run-time. There is also a graphical interface
(GNED) for creating and editing the topologies, which automatically
creates the topology file. |
Mixed-mode: OTcl (Object-Tcl)
with underlying C++ classes. OTcl is also used for creating and
configuring networks, recording results etc. |
Model Management |
The OMNeT++ simulation kernel is a class library, i.e., models in
OMNeT++ are independent of the simulation kernel. The researcher writes
their components (simple modules) against the OMNeT++ simulation kernel
API. OMNeT++ sources are never patched by models. Simple modules are
then reusable, and can be freely combined like LEGO blocks to create
simulations,. |
In ns-2, boundary between simulation core and
models is blurred, without a clear API. Install instructions for 3rd
party models usually begin like: "download ns2 2.xx.x, unpack it, then
apply the following patch..." |
Support for Hierarchical Models |
Hierarchical module structure in OMNeT++ facilitates dealing with
complexity in a methodical manner. Model designer assembles a complex
model from self-contained building blocks (i.e. simple modules and
compound modules) which are resuable in other simulations as they are. |
In ns-2, models are "flat": creating subnetworks, or implementing a
complex protocol as a composition of several independent units (that
appear as one unit) are not possible in ns-2. |
Debugging and Tracing Support |
OMNeT++ can show packet transmissions while a simulation is running.
OMNeT++'s Tkenv is an interactive execution environment, which allows
one to examine the progress of simulation and change parameters. There
is also extensive library support for packet tracing etc. |
? |
Variety of Models Available |
OMNeT++ has a good variety of models for simulating computer systems,
queueing systems etc., but lags behind the ns-2 simulator on
availability of communication protocol models. |
ns-2 has a
rich set of communication protocol models (since it has been designed
as a network protocol simulator, this is not surprising). |
Documentation |
OMNeT++ has a well written and up-to-date manual (there are also
tutorials for quick introduction). OMNeT++'s simulation API is more
mature and much more powerful than ns-2's. |
ns-2
documentation is fragmented (there is a good tutorial for quick
introduction). There is no clear dividing line between the models and
the ns-2 simulation library. |
Ability to Run Large Networks |
OMNeT++ can simulate very large scale network topologies. The limit is the virtual memory capacity of the computer used. |
ns-2 has scalability problems on simulating large network topologies (more details needed here). |
Support for Parallel Simulation |
Supports conservative parallel distributed simulation. The Null Message
Algorithm (Chandy-Misra-Bryant) and Ideal Simulation Protocol (Bagrodia
et al) are supported; others can be plugged in. Lookahead models for
NMA can be plugged in. Communication layer is pluggable: currently
implemented ones are MPI, named pipe, and file-based (for debugging).
Unlike PADS, models do not need to be modified or instrumented for
parallel simulation -- it is just a matter of configuration. |
The PADS research group at Georgia Tech. has developed extensions and enhancements to the ns-2 to allow a network simulation to be run in a parallel and distributed fashion on a network of workstations. |
Experiment Design |
Parameters of a simulation experiments are written in the omnetpp.ini , which enforces the concept of separating model from experiments. |
Models and experiments are usually interwoven in ns-2: topology,
parameters, model customizations, result collection etc usually in the
same Tcl script, which makes "separation of concerns" difficult. |
Embeddability |
OMNeT++ simulation kernel can be embedded in other applications (where
one can use alternative means of intpu/output, e.g., use databases).
The existing user interfaces can be extended via plug-ins, modified or
replaced. |
? |
http://ctieware.eng.monash.edu.au/twiki/bin/view/Simulation/OMNeTppComparison