table of contents

advertisement
Bilkent University
Department of Computer Engineering
- CS 491 Senior Design Project 1
High-Level Design Report
Group Members:
Emrah Bayraktaroğlu
Berk Berker
S. Tuncer Erdoğan
Mustafa Ömer Kılavuz
Erkan Okuyan
20200944
20201826
20200854
20202180
20201633
Supervisor:
Assistant Professor Dr. İbrahim Körpeoğlu
December 30, 2005
This report is submitted to the Department of Computer Engineering of Bilkent University in partial
fulfillment of the requirements of the Senior Projects course CS491.
Bilkent University – Department of Computer Engineering
TABLE OF CONTENTS
TABLE OF CONTENTS .......................................................................................................................... 1
1. INTRODUCTION ................................................................................................................................ 2
1.1. Purpose of the System .................................................................................................................... 2
1.1.1
Wireless Connectivity Module.......................................................................................... 2
1.1.2
Multimedia Streaming Module ......................................................................................... 2
1.2. Design Goals .................................................................................................................................. 3
1.2.1.
Platform Independency ..................................................................................................... 3
1.2.2.
Scalability.......................................................................................................................... 3
1.2.3.
Usability ............................................................................................................................ 3
1.2.4.
Robustness ........................................................................................................................ 3
1.2.5.
Reliability .......................................................................................................................... 3
1.3. Definitions, Acronyms & Abbreviations ....................................................................................... 4
2. CURRENT SOFTWARE ARCHITECTURE ...................................................................................... 5
3. PROPOSED SYSTEM ARCHITECTURE .......................................................................................... 5
3.1. Overview ........................................................................................................................................ 5
3.2. Subsystem Decomposition ............................................................................................................. 6
3.3. Hardware / Software Mapping ..................................................................................................... 12
3.4. Access and Security Control ........................................................................................................ 17
4. SUBSYSTEM SERVICES ................................................................................................................. 18
4.1. Network Services ......................................................................................................................... 18
4.2. Protocol Services.......................................................................................................................... 18
5. REFERENCES.................................................................................................................................... 19
6. APPENDIX ......................................................................................................................................... 20
6.1. How to setup Winamp ShoutCast Streaming Server? ................................................................. 20
1
Bilkent University – Department of Computer Engineering
1. INTRODUCTION
As of 21st century, mobility becomes one of the very most important concepts affecting daily lives of
humans. Cell phones, WAP, GPRS, 3 & 3.5G are the key concepts of mobile world that everybody can
reach. More specific technologies, such as IEEE 802.11b & 802.11g standards provides more
professional approaches to wireless communication needs. These stand-alone wireless technologies
give the developers the chance to develop ad-hoc applications in the inner structure of a stand-alone adhoc sub network without the obligation to connect to the general network, such as the Internet or the
phone network.
The developmental possibilities to the wireless sub networks are unbounded. P2P file sharing, LAN &
WAN gaming, secure-region implementations, residential area management systems, suburban & rural
area Internet access systems are simple, well-known and yet powerful examples of wireless
communication technologies.
Multimedia streaming over wireless ad-hoc networks is a new area of research in mobility world. Being
a new area of research brings its own problems to the researchers. First of all multimedia streaming
over wireless connections diverse from streaming over fixed communication lines, mobile devices are
not placed at permanent places and constantly moves around. Additionally the connection range of
these mobile devices is so limited to provide extensively usable services. On the other hand, building
an ad-hoc infrastructure to provide wide-area services is another challenge that must be passed over.
Most challenging component of a multimedia streaming network over wireless lines is its
independence. The independent network should maintain its own state information and update the
routes by considering the formerly added nodes & removed nodes in the current state of the system.
1.1. Purpose of the System
The purpose of system is to build a reliable and stable wireless ad-hoc infrastructure to provide
enjoyable streaming experience to the future users of the system.
The system itself will consist of:
1.1.1 Wireless Connectivity Module
This module will scan the environment for available machines and connect to the sub network it
finds. The found node/nodes will help the current node to connect to the network using wireless
ad-hoc infrastructure, and build up the network map to find reachable nodes and files.
1.1.2 Multimedia Streaming Module
Based on the wireless connectivity module, this higher layer provides services to support audio,
video, and maybe even file, like documents, streaming.
2
Bilkent University – Department of Computer Engineering
1.2. Design Goals
1.2.1. Platform Independency
The wireless devices spread over various platforms (Many kinds of CPUs, operating systems,
etc.), so the software should be platform independent. C# is a semi-independent language, can
be run on Windows systems, and partially run on GNU/Linux systems with the help of Mono
Project.
1.2.2. Scalability
The system should be able to support sub networks consisting from two wireless devices up to
thousands, maybe. The system should all be capable of handling infinite number of different
combinations with the help of intelligent, self-learning algorithms.
1.2.3. Usability
The software is a part of research project, consisting of tests on wireless communication
parameters, protocol choices, server and client architectures, and so on. But the final result must
provide a brilliant piece of software, easy to use, for the end-users. Inner details, working
principles of networking and ad-hoc architecture should be encapsulated from end-users.
1.2.4. Robustness
The software itself should provide robustness, disabling user to take wrong actions, entering
invalid data.
1.2.5. Reliability
Reliability is divided into two terms:
i) Reliability in means of scalability: Software should be able to handle large number of
clients and downstream/upstream. Multimedia data generally requires large bandwidth and
powerful CPUs, so the software should both be lightweight in terms of CPU cycles and yet
powerful to handle large amount of data transfers.
ii) Reliability in means of data security: The streaming data will be transferred on different
devices, so it should be guaranteed that the initial data and the output on the client are the
same. This process should also be completed very fast and should not become a bottleneck
on the end systems in means of CPU cycles.
3
Bilkent University – Department of Computer Engineering
1.3. Definitions, Acronyms & Abbreviations
P2P
A peer-to-peer (or P2P) computer network is a network that relies on the computing power and
bandwidth of the participants in the network rather than concentrating it in a relatively low number of
servers. P2P networks are typically used for connecting nodes via largely ad hoc connections. Such
networks are useful for many purposes. Sharing content files containing audio, video, data or anything
in digital format is very common, and real-time data, such as telephony traffic, is also passed using P2P
technology. [2]
ad-hoc
Network based on the collective operations of the individual nodes. As in the following figure, Node A
may not be able to reach node B directly because of the wireless communication limitations, but having
the network tunneling over node C, node B becomes a part of sub network of node A.
MANET
A mobile ad-hoc network (MANET) is a self-configuring network of mobile routers (and associated
hosts) connected by wireless links—the union of which form an arbitrary topology. The routers are free
to move randomly and organize themselves arbitrarily; thus, the network's wireless topology may
change rapidly and unpredictably. Such a network may operate in a standalone fashion, or may be
connected to the larger Internet. Minimal configuration and quick deployment make ad hoc networks
suitable for emergency situations like natural or human-induced disasters, military conflicts, emergency
medical situations etc. [2]
RTP
The Real-time Transport Protocol (RTP) defines a standardized packet format for delivering audio and
video over the Internet. It was developed by the Audio-Video Transport Working Group of the IETF
and first published in 1996 as RFC 1889. [2]
RTCP
RTP Control Protocol (RTCP) is a sister protocol of the Real-time Transport Protocol (RTP). It is
defined in RFC 3550 (which obsoletes RFC 1889. [2]
RTSP
The Real Time Streaming Protocol (RTSP), developed by the IETF and published in 1998 as RFC
2326, is a protocol for use in streaming media systems which allows a client to remotely control a
streaming media server, issuing VCR-like commands such as "play" and "pause", and allowing timebased access to files on a server.
Some RTSP servers use RTP as the transport protocol for the actual audio/video data. Many RTSP
servers use Real Networks' proprietary RDT as the transport protocol. [2]
4
Bilkent University – Department of Computer Engineering
2. CURRENT SOFTWARE ARCHITECTURE
Currently there are many systems that stream multimedia over network. Both wired and wireless
networks are involved in streaming; however used networks are mostly infrastructured networks.
Infrastructured networks are networks with fixed and wired gateways. The bridges for these networks
are known as base stations. A mobile unit within these networks connects to, and communicates with,
the nearest base station that is within its communication radius. As the mobile travels out of range of
one base station and into the range of another, a “handoff” occurs from the old base station to the new,
and the mobile is able to continue communication seamlessly throughout the network. Typical
applications of this type of network include office wireless local area networks (WLANs). [1]
As a second alternative, infrastructureless wireless network, commonly known as ad hoc network can
be used for streaming purposes. In our proposed system, streaming will be made over wireless ad hoc
networks, because of the advantageous features of ad hoc networks:
i) Ad hoc networks have no fixed routers; all nodes are capable of movement and can be connected
dynamically in an arbitrary manner.
ii) Nodes of these networks function as routers which discover and maintain routes to other nodes
in the network.
iii) Nodes in the network can connect to other nodes which are out of their communication radius.
iv) In ad hoc networks there is no need for a central maintenance unit or a super node.
3. PROPOSED SYSTEM ARCHITECTURE
3.1. Overview
The proposed system will use ad hoc networks for streaming. For an efficient resulting system,
effective use of ad hoc routing algorithms is crucial. A routing protocol for wireless ad hoc networks
should deal with the following challenges:
1. Mobility of source and target nodes
2. Bandwidth constraints of the channel
3. Error-Prone Shared Broadcast Radio Channel
4. Hidden and Exposed Terminal Problems
5. Resource Constraints such as power, weight and size
Additionally, while dealing with various challenges originated from the nature of wireless medium, an
ideal routing for wireless networks should have the following characteristics:
- The algorithm must be fully distributed meaning capable of operating without a central coordination.
5
Bilkent University – Department of Computer Engineering
-Adaptations should be provided against frequent topology changes.
- Route computation and maintenance must involve minimum number of nodes.
- It must be localized. Global state maintenance involves a huge control overhead.
- It must be loop free.
- There must be a mechanism to control the broadcasts in order to minimize the packet collisions.
- A fast convergence must be provided.
- The traffic information should be maintained as long as it is related with the corresponding node.
- A certain level of QoS should be guaranteed.
- It must use scarce resources such as bandwidth, computing power, memory and
battery power optimally.
3.2. Subsystem Decomposition
The system is designed with moduler approach, so the system includes the following sub-modules.
Application module: In this module, multimedia streaming tools and video/audio players will be
used as applications. These tools are already implemented reliable and robust software products.
Possible candidates for servers are Windows Media Server and Winamp SHOUTCast. Each of
these servers has already implemented players that can play the streaming media without any
problems.
Ad-Hoc Routing Module: There are various Ad-Hoc algorithms proposed so far. These
algorithms differ from each other according to various aspects. These algorithms use different
decision variables and as a consequence each produces different routes.
Figure 1
6
Bilkent University – Department of Computer Engineering
Some necessary classifications are shown below [1].:
1) Table-Driven Routing Algorithms: Table-driven routing protocols maintain consistent, upto-date routing information. To do so one or more tables need to be stored. These tables are
maintained by advertising the changes in network to keep consistent state in network. There are
several proposed algorithm designed as table driven. Some examples are: Destination Sequenced
Distance Vector (DSDV), Clusterhead Gateway Switch Routing (CGSR), and Wireless Routing
Protocol (WRP). These algorithms may differ on necessary tables needed or underlying working
principle. Since these algorithms are mainly suitable for wired networks we intend to use the next
class of algorithms for project.
2) Source-Initiated On-Demand Routing: Algorithms that are created according to this
principle creates routes only when desired by the source node. When a node requires a route to a
destination, it initiates a route discovery process within the network. This discovery process is
completed once a route is found or all possible routes have been examined. After establishment
of route, it will be kept with a maintenance procedure until a link on route will be unavailable or
route to destination becomes undesired. There are several proposed algorithm designed with onDemand trait. Some examples are: Ad-Hoc on Demand Distance Vector Routing (AODV),
Dynamic Source Routing (DSR), Temporally Ordered Routing Algorithm (TORA), Associativity
Based Routing (ABR) and Signal Stability Routing (SSR). These algorithms are suitable for
wireless networks. So they are explained extensively below and we state the advantages of
algorithms over others for our project.
Table-Driven vs. On-Demand Routing:
Figure 2
Routing information is needed to be propagated in table-driven routing protocols. This causes an
overhead on routing calculations, power consumption and signaling traffic since all routes are
calculated regardless if it is needed. Since both bandwidth and battery power are most needed sources,
this overhead becomes a serious problem.
According to the facts that are described above for Table-Driven Routing Protocols and On-Demand
protocols, the latter protocols are more preferred in Wireless Mobile Devices, so our program will use
7
Bilkent University – Department of Computer Engineering
an On-Demand protocol as routing algorithm. Each of the On-Demand protocols will be explained.
Their advantages/disadvantages are stated below:
1) Ad Hoc On-Demand Distance Vector Routing: This protocol uses Distance Vector Routing based
on Bellman-Ford routing mechanism. This algorithm sends much less broadcast messages when it is
compared with DSDV algorithm; because broadcast messages are required only if a demand occurs.
Also nodes, which are not in the selected path, do not need to maintain table about routing information.
First of all the source node needs to know the route of the destination node, so it broadcasts route
request (RREQ) message to its neighbors. Receiving neighbor nodes also sends the RREQ message to
their neighbors until a node which have unexpired route to destination node is located. This process is
shown in figure 3-a.
Once the RREQ reaches destination and intermediate nodes that are unexpired, these nodes send back
route reply (RREP) message to nodes which sent the RREQ message. This process is shown in 3-b.
Nodes listen for retransmission to ensure that neighboring nodes are still accessible. If there is no
response coming over from a neighbor node, listening node sends ‘Hello’ message to its neighbors and
waits for acknowledgement from the neighbor nodes. Hello messages also help us to acquire network
knowledge around listening node, because these messages list other nodes from which a mobile has
heard.
AODV does its advertisements with smaller packets, so it uses the network bandwidth in a good
manner, but AODV needs more memory than possible other algorithms and it needs symmetric links
between nodes, so it is not applicable for many situations.
Figure 3
8
Bilkent University – Department of Computer Engineering
2) Signal Stability Routing (SSR): SSR algorithm chooses the route according to signal strength
between nodes and nodes’ location stability. The main idea, in order to choose the route according to
these decision variables, is to maintain the connectivity via usage of strong links between nodes so a
high quality transfer can be obtained. SSR can be thought as combination of 2 sub protocols: Dynamic
Routing Protocol (DRP), Static Routing Protocol (SRP). DRP maintains two tables, one for signal
strength of links (SST) and other for routing information (RT). SRP routes the packets to necessary
destination according to RT. If the destination is not in RT, a route search is initiated. For this route
search only strong channels are used (if not otherwise stated). So if a route is found from these strong
channels that would be a useful channel to transfer packets.
Although the qualities of produced routes are good, there are some disadvantages of this protocol.
Since intermediate nodes cannot reply to route requests sent toward a destination, this results in
potentially long delays before a route can be discovered. Also the algorithm requires low level support
from physical layer to determine signal strength, this algorithm is not easy to implement in higher
layers.
3) Associativity-Based Routing (ABR): A new metric, degree of association stability, is used in
Associativity- Based Routing algorithm. Every node produces beacon within certain time intervals and
a node receiving this beacon increases its associativity tick of node that produces beacon. By using
routes with high degree of association links we can assure a good quality of transfer via nodes with low
mobility. Although the resulting route may not contains the smallest number of hops, route tend to be
longer lived than any possible others.
We can mention three phases of ABR: Route Discovery, Route Reconstruction, and Route Deletion.
On route discovery, source node produces a broadcast packet and sends it to its neighbors. Receiving
nodes (if it is not destination) append their associativity ticks with their neighbors and their IPs then
pass the packet to its neighbors. This way, arriving packets to destination nodes will have associativity
ticks so destination node can determine the best possible route out of received packets. Route
reconstruction may be necessary in case of a route discovery or loss. In that case we don’t have to
initiate the reconstruction from source node like SSR. We can initiate the reconstruction from
intermediate nodes (using the previously described method). When deletion is required on route
deletion, source node broadcast a packet (Route Delete packet) and every node receiving the packet
adjust their routing tables and pass the packet to the next nodes.
Since resulting route of route discovery phase is a long lived route, it is highly possible that
reconstructions of routes won’t be necessary so we can obtain higher throughputs. Also ABR is free
from loops, deadlocks and packet duplicates. These are important advantages of algorithm. Though we
need to mention beaconing process may cause additional power consumption. Finally ABR can be said
a good algorithm since it satisfies most of the requirements such as low memory usage, efficient
reconstruction, being duplicate free etc. but algorithm may be harder to implement than any other good
alternative.
9
Bilkent University – Department of Computer Engineering
Figure 4
4) Temporally Ordered Routing Algorithm: Temporary Ordered Routing Algorithm (TORA) is for
highly dynamic mobile networking environment. It provides multiple routes for any source/destination
pair. The main advantage of TORA algorithm over other algorithms is the small number of control
messages. This gain is obtained by maintaining routing information about only adjacent nodes and by
sending the necessary packets to them. There are 3 operations for this protocol. These are route
creation, route maintenance and route erasure. Nodes use height metric to establish a directed acyclic
graph. The root of the graph is the destination node. Links are assigned a direction based on the relative
height metric of neighboring nodes. These are shown in Figure 5.
One of TORA’s most important advantages is its support to multiple routes. Since it decreases the need
for reconstruction operations, it will decrease the traffic in network, but TORA needs to have
synchronized clocks and it decreases its applicability. Considering the challenge to implement TORA
and its advantages/disadvantages, TORA does not seem like the needed algorithm.
10
Bilkent University – Department of Computer Engineering
Figure 5
5) Dynamic Source Routing: In the dynamic source routing protocols mobile nodes maintain route
caches. The source node hold route tables of other nodes which have accesibility to source nodes.
When new routes are adversited, route cache entries are updated. This protocol has two stages. These
are route discovery and route maintenance. When a node wants to send a packet, it first searches its
route cache, and if it finds the route and the route is not expired, it can simply use that route to send the
packet. If there’s no route for source node, it broadcasts a route request packet for discovery. Nodes
that receive the route request packet checks whether they know a route to te destintion node. If a node
does not know a route to the destintion, it adds its address to the route record of the packet and after
that, it forwards the packet to its outgoing links. If a mobile’s address is present in incoming packet, the
current node does not forward the route request message to that node, so number of route request
messages becomes more limited.
When the route request reaches the destination node or it reaches the intermediate node which contains
an unexpired route in its route cache, a route reply is generated. When the packet is received by the
destination node or the intermediate node, the node contains number of hops taken by the packet.
Figure 6-a illustrates the evolution of the route record as route progresses in the network. When the
destination node sends the route reply packet, it places the route record that is contained in the route
request. When an intermediate node sends the route reply packet, it appends its cached route to the
route record that is contained in the route request. If the responding node has a route to the sending
node in its route cache, sending node can send the route reply. Otherwise, if symmetric links are
supported, route records in the nodes can be reversed. If symmetric links are not supported, the
responding node sends discovery message and all the prodecure will be repeated. Transmission of route
reply and the node record of each node is shown in figure 6-b.
11
Bilkent University – Department of Computer Engineering
During route maintenance phase route error packets is used to truncate the hop with error. When a node
encountersd a fatal transmission problem, route error are generated at that node and these packets are
used to remove the hop from the tables of receiving nodes.
DSR allows multiple routes to a destination in routing tables of internal nodes, so when a node is
broken, it may not need a new reconstruction and it will save bandwidth. DSR does not use periodic
routing advertisements which lead to saving bandwidth and power consumption. But DSR is no
applicable on large networks since it has an assumption of diameter on the network. Despite DSR’s this
disadvantage, it seems like the best algorithm. Since it satisfies the bandwidth and power consumption
requirements and it is efficient on relatively small networks, this is our preferred algorithm.
Figure 6
3.3. Hardware / Software Mapping
ASUS MyPal A620
The MyPal A620 Series, the world's smallest Pocket PC with built-in CF slot to deliver superior
multimedia support, offers unparalleled performance and expandability.
The MyPal A620 runs the new Windows Mobile 2003 operating system, which offers plenty of
changes over Pocket PC 2002, even if many are evolutionary enhancements rather than major
developments. The new OS doesn't require more Flash ROM or RAM than its predecessor, and the
MyPal A620 comes with 32MB of the former and 64MB of the latter (58MB of which is available to
the user). This specification is no different to standard Pocket PC 2002 devices. [7],[8]
12
Bilkent University – Department of Computer Engineering
Specifications:
Processor
400 MHz Intel® XScale™ PXA255 Processor
Operating System
Microsoft® Windows Mobile™ 2003
Display
3.5"" Brilliant Transflective TFT LCD
65536 Full-color, 16-bit Display, 320X240 Resolution
Memory
32 MB Flash and 64 MB SDRAM
(58.7MB SDRAM user accessible for Western Languages;
56.7MB SDRAM user accessible for Eastern Languages)
Expansion Slot
One Slot - One CompactFlash Type II Card Slot (3.3/5V)
Audio
Integrated Microphone and Speaker
Full Duplex Record and Playback
One 3.5 mm Earphone Jack and MP3 Stereo
Connection
Infrared port: FIR/SIR
Battery
1300 mAh Lithium Ion Removable Battery
Size
125x 76.8x 13.3 mm
Weight
141g
D-Link DWL-G510
The D-Link AirPlus G DWL-G510 PCI Adapter is a Wireless PCI Adapter featuring the very latest in
advanced wireless silicon chip technology to deliver a maximum wireless signal rate of up to 54Mbps*
in the 2.4GHz frequency. The DWL-G510 also works with 802.11b standard wireless devices and
when used with other D-Link AirPlus G products delivers throughput speeds capable of handling heavy
data payloads.
The D-Link AirPlus G DWL-G510 also includes a configuration utility to discover available wireless
networks and create and save detailed connectivity profiles for those networks most often accessed.
The DWL-G510 is a powerful 32-bit PCI adapter that installs quickly and easily into desktop PCs and
when used with other D-Link AirPlus G products automatically connects to the network. Like all DLink wireless adapters, the DWL-G510 can be used in Ad-Hoc mode to connect directly with other
2.4GHz wireless computers for peer-to-peer file sharing or in Infrastructure mode to connect with a
wireless access point or wireless router for access to the Internet in your office or home network. The
DWL-G510 is an ideal solution enabling wireless networking capabilities on desktops PCs for the
home or office.[9]
13
Bilkent University – Department of Computer Engineering
Specifications:
Standards
Interface
Wireless Signal Rates*
With Automatic Fallback
Security

IEEE 802.11b

IEEE 802.11g
32-bit PCI

54 Mbps

48 Mbps

36 Mbps

24 Mbps

18 Mbps

12 Mbps

11 Mbps

9 Mbps

6 Mbps

5.5 Mbps

2 Mbps

1 Mbps

64-, 128-WEP

802.1x

WPA** -- Wi-Fi Protected Access (64-,
128-WEP with TKIP, MIC, IV Expansion,
Shared Key Authentication)
Media Access Control
CSMA/CA with ACK
Wireless Frequency Range
2.4 GHz to 2.462 GHz
Wireless Signal Range*
Indoors: Up to 328 feet (100 meters)
Outdoors: Up to 1,312 feet (400 meters)
Power Consumption

PowerSave mode = 28 mA

Standby mode = 4.66 mA

Transmit mode = 248 mA

Orthogonal Frequency Division
Multiplexing (OFDM)

Complementary Code Keying (CCK)

54 Mbps OFDM, 10% PER, -68 dBm)
Modulation Technology
Receiver Sensitivity*
14
Bilkent University – Department of Computer Engineering

48 Mbps OFDM, 10% PER, -68 dBm)

36 Mbps OFDM, 10% PER, -75 dBm)

24 Mbps OFDM, 10% PER, -79 dBm)

18 Mbps OFDM, 10% PER, -82 dBm)

12 Mbps OFDM, 10% PER, -84 dBm)

11 Mbps CCK, 8% PER, -82 dBm)

9 Mbps OFDM, 10% PER, -87 dBm)

6 Mbps OFDM, 10% PER, -88 dBm)

5.5 Mbps CCK, 8% PER, -85 dBm)

2 Mbps QPSK, 8% PER, -86 dBm)

1 Mbps BPSK, 8% PER, -89 dBm)
Transmitter Output Power
15 dBm ± 2dB
Internal Antenna Type

Operating Temperature
32°F to 149°F ( 0°C to 55°C)
Humidity
95% maximum (non-condensing)
Dimensions
Dipole with detachable reverse SMA
connector

L = 4.64 inches (114.3mm)

W = 2.13 inches (54mm)

H = 0.34 inches (8.7mm)
Weight
0.12 lb (55g)
Certifications
FCC part 15b
Warranty
3 Year
D-Link Air DCF-660W
The DCF-660W D-LinkAir CompactFlash card is a wireless LAN card that brings true mobility to your
pocket and handheld PCs. With interoperability, reliable speed and affordable price, this wireless LAN
CompactFlash card offers all the benefits of a traditional wired Ethernet network, plus the advantage of
being wireless.
This card lets you stay connected while you're moving around with your PDA to work, send/view email and access server data, all without the need to hook up to any network wires.
Complying with IEEE 802.11b industry standard, the DCF-660W operates at the 2.4GHz frequency
range and interoperates with all IEEE 802.11b equipment. Ethernet-based network access from your
15
Bilkent University – Department of Computer Engineering
PDA is also possible through IEEE 802.11b Access Points.
Designed as a Type I CompactFlash, the DCF-660W plugs into any pocket or handheld PC equipped
with a Type I slim expansion slot, or a Type II expansion slot. The DCF-660W has been tested to
operate with a long list of PDAs, including Compaq IPAQ series, Casio pocket PCs, HP Jornada, Sharp
Telios and Intel Pentium/X86 Pocket PCs.
Security is an issue when data is transmitted without the wires. In the air, transmitted data can be easily
intercepted if not well protected by a security scheme. The DCF-660W provides the necessary security,
using the industry-standard 64/128-bit WEP (Wired Equivalent Privacy) encryption protocol. Data
privacy mechanism is based on a shared key algorithm, as described in the wireless LAN
standards.[10]
.NET PLATFORM
Microsoft Visual Studio .NET 2003
The development platform for the project is Microsoft Visual Studio .NET
2003. Visual Studio .NET 2003 provides native support for the .NET Compact Framework, bringing
devices such as the Pocket PC, as well as other devices powered by the Microsoft Windows CE .NET
operating system, to the forefront of .NET development.
.NET Compact Framework
The compact framework constitutes the methodology of .NET platform. The code compiled in .NET is
first compiled into processor independent Microsoft Intermediate Language (MSIL). At the time of
execution Common Language Runtime (CLR) is employed to perform Just-In-Time compilation.
MSIL code is converted into native code in this phase. Consequently .NET Compact Framework offers
machine independent code development opportunity.
Visual C# Language
Microsoft Visual C# is the language that will be used for the implementation of the proposed system.
C# supports object-oriented programming as well as low level operations. The low level abilities and
network features of the C# will be widely used in the project. [4]
Windows Mobile 2003 for Pocket PC
This is the software used for the Asus A620. Most important features of Windows Mobile 2003 are:

Enhanced Connection Manager

802.1x support

Support for Multiple VPNs

IPv6 support

Windows CE 4.2 operating systems
16
Bilkent University – Department of Computer Engineering

.NET Compact Framework

Enhanced developer support

128-bit encryption strength for Crypto API . [3]
SHOUTCast
SHOUTCast is one of the possible streaming server programs we will be using for the project. It is
actually a plug-in program for widely-known media player Winamp. Once installed, SHOUTCast
server runs on port 8000, and uses its own protocol to stream media. In order to stream media from a
SHOUTCast server, a “.pls” file is downloaded from the server via HTTP. On the client side, a media
player that can run a “.pls” file should be used.[5]
Windows Media Server
Windows Media Server is another broadcast server application that would be used for the project.
WMS runs on an Windows Server 2003 system, and client can be any network enabled device that can
run Windows Media Player. Client connects server and downloads an “.asx” file for streaming.
Windows Media Server uses MMS protocol for streaming media. [6]
3.4. Access and Security Control
Security is an important issue for ad hoc networks, especially for those security-sensitive applications.
To secure an ad hoc network, we consider the following attributes: availability, confidentiality,
integrity, authentication, and non-repudiation.
Availability ensures the survivability of network services despite denial of service attacks. A denial of
service attack could be launched at any layer of an ad hoc network. On the physical and media access
control layers, an adversary could employ jamming to interfere with communication on physical
channels. On the network layer, an adversary could disrupt the routing protocol and disconnect the
network. On the higher layers, an adversary could bring down high-level services. One such target is
the key management service, an essential service for any security framework.
Confidentiality ensures that certain information is never disclosed to unauthorized entities. Network
transmission of sensitive information, such as strategic or tactical military information, requires
confidentiality. Leakage of such information to enemies could have devastating consequences. Routing
information must also remain confidential in certain cases, because the information might be valuable
for enemies to identify and to locate their targets in a battlefield.
Integrity guarantees that a message being transferred is never corrupted. A message could be corrupted
because of benign failures, such as radio propagation impairment, or because of malicious attacks on
the network.
Authentication enables a node to ensure the identity of the peer node it is communicating with. Without
authentication, an adversary could masquerade a node, thus gaining unauthorized access to resource
17
Bilkent University – Department of Computer Engineering
and sensitive information and interfering with the operation of other nodes.
Finally, non-repudiation ensures that the origin of a message cannot deny having sent the message. No
repudiation is useful for detection and isolation of compromised nodes. When a node A receives an
erroneous message from a node B, non-repudiation allows A to accuse B using this message and to
convince other nodes that B is compromised.
Our security issues are going to be handled in application layer. So, availability is the major security
problem in our project that also involves Secure Routing. The other issues are mostly handled in other
layers and the third party applications. [11]
4. SUBSYSTEM SERVICES
4.1. Network Services
Networking based on the socket services of the operating system, simply TCP and UDP sockets. A new
node connected to the sub network fires the server to forward the connection data to the client machine.
New node is announced to the network as a new peer, if it is a content supplier and works as a server.
4.2. Protocol Services
Protocol services are based on network services. Protocol services provide a common gateway to the
server and the client to talk to each other in a proper way and exchange data.
18
Bilkent University – Department of Computer Engineering
5. REFERENCES
Articles:
[1] A Review of Current Routing Protocols for Ad Hoc Mobile Wireless Networks. April, 1999. IEEE
Personal Communications. Elizabeth M. Royer, University of California, Santa Barbara. Chai-Keong
Toh, Georgia Institute of Technology
Web Sites:
[2] http://en.wikipedia.org/wiki/Main_Page
[3] http://www.brighthand.com/article/Windows_Mobile_2003_Overview
[4] http://www.msdn.com
[5]http://www.shoutcast.com/support/docs/index.phtml?language=english&layout=print&prevlayout=n
ormal
[6] http://www.microsoft.com/windows/windowsmedia/howto/articles/webserver.aspx
[7] http://www.asus.com/products4.aspx?l1=8&l2=0&l3=0&model=338&modelmenu=1
[8] http://reviews.zdnet.co.uk/hardware/handhelds/0,39023875,10004794,00.htm
[9] http://www.dlink.com/products/?pid=308
[10] http://www.expansys.com/product.asp?code=DCF-660W&partner=register
[11] http://www.cs.cornell.edu/home/ldzhou/adhoc.pdf
19
Bilkent University – Department of Computer Engineering
6. APPENDIX
6.1. How to setup Winamp ShoutCast Streaming Server?
Winamp becomes a powerful audio streaming server by setting up the followings:
i)
Shoutcast DSP plug-in:
The plug-in enables the Winamp to produce audio stream from the currently playing song. It
produces the audio stream, with the selected attributes like bit rate, mono/stereo, and so on. In order
to enable DSP, preferences of Winamp should be open, the DSP plug-in must be double-clicked
and the following changes must be done:
In order to enable plug-in, Winamp should be restarted.
ii)
Shoutcast DNAS server:
The server handles clients and forwards the output of the DSP plug-in to clients. GUI
20
Bilkent University – Department of Computer Engineering
version of the DNAS server is a bit buggy, so console based server must be used in order to
produce better results.
And the result can be accessed with the address http://localhost:8000/, but pressing the listen
button residing on the top bar of the html page will activate Winamp to play the broadcast.
So the server must be reached from another computer to be tested.
21
Bilkent University – Department of Computer Engineering
22
Download