Академический Документы
Профессиональный Документы
Культура Документы
INTRODUCTION
Wireless access networks have been more and more widely used in recent years,
since compared to the wired networks, wireless networks are easier to install and use.
Due to the tremendous practical interests, much research effort has been devoted to
wireless access networks and great improvements have been achieved in the physical
layer by adopting newer and faster signal processing techniques, for example, the data
rate in 802.11 wireless Local Area Network (LAN) has increased from 1 Mbps in the
early version of 802.11b to 54 Mbps in 802.11a. We have noted that in addition to
increasing the point to point capacity, new signal processing techniques have also made
other novel transmission schemes possible, which can greatly improve the performance
of wireless networks.
In this project, we study a novel Multiple-Input, Multiple-Output (MIMO)
technique called Multiple Packet Transmission (MPT), with which the sender can send
more than one packet to distinct users simultaneously. Traditionally, in wireless
networks, it is assumed that one device can send to only one other device at a time.
However, this restriction is no longer true if the sender has more than one antenna. By
processing the data according to the channel state, the sender can make the data for one
user appear as zero at other users such that it can send distinct packets to distinct users
simultaneously. For now, we want to point out the profound impact of MPT technique on
wireless LANs. A wireless LAN is usually composed of an Access Point (AP), which is
connected to the wired network, and several users, which communicate with the AP
through wireless channels.
In wireless LANs, the most common type of traffic is the downlink traffic, i.e.,
from the AP to the users when the users are browsing the Internet and downloading data.
In today’s wireless LAN, the AP can send one packet to one user at a time. However, if
the AP has two antennas and if MPT is used, the AP can send two packets to two users
whenever possible, thus doubling the throughout of the downlink in the ideal case. MPT
is feasible for the downlink because it is not difficult to equip the AP with two antennas,
1.1 Purpose:
This project proposes simultaneous Multiple Packet Transmission (MPT) to
improve the downlink performance of networks. Using this multiple packet
transmissions, two compatible packets can send simultaneously by sender to two different
systems. This will lead to a good performance of a network. The throughput of packet
transmission can make to double. Project approves the problem of finding a schedule to
send out buffered packets with in a time. Maximum matching algorithms are relatively
complex and may not meet the timing requirements of real-time applications, and it is
very difficult to implement. Project gives fast approximation algorithm that is capable of
finding a matching at least 75% of the size of a maximum matching in a calculated time.
These days everything in this world are fast and no one likes to wait.
Therefore performance of multiple packet transmission downlinks should
improve. There are some limits for arrival rate that can allow in a network. Our proposed
one can enhance MPT, and the results show that the maximum arrival rate increases
appreciably even with a very small compatibility probability.
Future Enhancement
1. The Simultaneous Multiple Packet Transmission system can be also implanted in
web application.
2. The number of file receiving systems can be increased.
The feasibility of the project is analyzed in this phase and business proposal is
put forth with a very general plan for the project and some cost estimates. During system
analysis the feasibility study of the proposed system is to be carried out. This is to ensure
that the proposed system is not a burden to the company. For feasibility analysis, some
understanding of the major requirements for the system is essential.
♦ ECONOMICAL FEASIBILITY
♦ TECHNICAL FEASIBILITY
♦ SOCIAL FEASIBILITY
Economical Feasibility
This study is carried out to check the economic impact that the system will
have on the organization. The amount of fund that the company can pour into the
research and development of the system is limited. The expenditures must be justified.
Thus the developed system as well within the budget and this was achieved because most
of the technologies used are freely available. Only the customized products had to be
purchased.
Technical Feasibility
This study is carried out to check the technical feasibility, that is, the technical
requirements of the system. Any system developed must not have a high demand on the
available technical resources. This will lead to high demands on the available technical
resources. This will lead to high demands being placed on the client. The developed
Disadvantages
1) Takes lot of time for sending a single file.
2) Worthless in wireless connections.
3) Do not considering user convenience.
Advantages
1) Reducing actual file transfer time, the download time for each user can be minimized.
2) Packet delay can be greatly reduced even with a very small compatibility
probability.
3) The maximum arrival rate increases significantly
Software Specification
Technologies : .NET
Language : C#.NET
Database : SQL
Web/Application server : Web logic Server and IBM Web Sphere
Operating System : Windows NT/2000/XP
In this project we study problems related to MPT and provide our solutions. We
formalize the problem of sending out buffered packets in minimum time as finding a
maximum matching in a graph. Since maximum matching algorithms are relatively
complex and may not meet the speed of real time applications, we consider using
approximation algorithms and present an algorithm that finds a matching with size at
least 3/4 of the size of the maximum matching in O(|E|) time where |E| is the number of
edges in the graph. We then study the performance of wireless LAN enhanced
with MPT and give analytical bounds for maximum allowable arrival rate. We also use
an analytical model and simulations to study the average packet delay. Enhancing
wireless LANs with MPT requires the Media Access Layer (MAC) to have more
knowledge about the states of the physical layer and is therefore a form of crosslayer
design. In recent years cross-layer design in wireless networks has attracted much
attention because of the great benefits in breaking the layer boundary.
For example, [5, 6] considered packet scheduling and transmission power control
in cross-layer wireless networks. However, to the best of our knowledge, packet
scheduling in wireless networks in the context of multiple packet transmission has not
been studied before. [3, 4] have considered Multiple Packet Reception (MPR) which
means the receiver can receive more than one packets from distinct users simultaneously.
MPR is quite different from MPT since MPR is about receiving multiple packets at one
node while MPT is about sending multiple packets from one node to multiple nodes.
Lemma 1 If there is an augmenting path traversing all 3 matching edges between A and
B, there must exist an augmenting path traversing only 1 matching edge between A and
B.
Proof. This can be best explained with the help of Fig. 3, where edges in the matching
are shown as heavy lines and edges not in the matching are shown as dashed lines. As in
the figure, suppose an augmenting path traversing all three matching edges between A
and B is x−a1 −b1 −c−d − b2 − a2 − e − f − a3 − b3 − y. However, if x is adjacent to
a1, it must also be adjacent to a3 since a1 and a3 belong to the same group, thus there is
a shorter augmenting path traversing only to the last matching edge between A and B
which is x − a3 − b3 − y. (Note that the same proof also holds if in the augmenting path,
the segment between, say, b1 and b2, is longer.) As a result of this lemma, if there exists
an augmenting path, there must also exist an augmenting path traversing no more than
two matching edges between any two groups of vertices. This is because if the path
Practical Considerations
Although the optimal schedule can be found for a given set of packets by the
maximum matching algorithm, in practice, the packets do not arrive all at once but arrive
one by one. It is not feasible to run the maximum matching algorithm every time a new
packet arrives due to the relatively high complexity of the algorithm. Therefore, after a
new packet arrives, we can match it according to the following simple strategy: A new
vertex is matched if and only if it can find an unsaturated neighbor. In this way we
always maintain a maximal matching, where a matching M is maximal in G if no edge
not belonging to M is vertex disjoint with all edges in M. For example, the two matching
in Fig. 2 are all maximal matching. The maximum matching algorithm can be called only
once a while to augment the existing maximal matching. Another problem is that the
packets do not stay in the buffer forever and must be sent out. We will have to make the
decisions of which packet(s) should be sent out once the AP has gained access to the
media and there is a delicate tradeoff between throughput and delay. To improve the
throughput, we should always send out packets in pairs; however, this policy favors the
packets that can be matched over the packets that cannot be matched, and will increase
the delay of the latter.
To prevent excessive delay of the single packets, in practice, we can keep a time
stamp for each packet and if the packet has stayed in the buffer for a time longer than a
threshold, it will be sent out the next time the AP has gained access to the media. If there
since if i > l, the addition of the nth user reduces the number of isolated users by i
− l, thus it must be compatible with exactly i − l previous isolated users. Fig. 7 shows the
maximum arrival rate for networks of different sizes under different compatibility
probabilities. It is remarkable to see that a significant improvement can be achieved even
with very small compatibility probability.
For example, for n = 10, when p = 0.04, the maximum arrival rate is 1.2, which is
a 20% increase. Finally, we want to argue that the maximum arrival rate is approximately
achievable, although it is at the cost of excessive delay for the isolated users. Note that as
mentioned earlier, the maximum arrival rate is achieved if packets destined for non-
isolated users are always sent out in pairs and if no time slot is wasted, i.e., there is
always at least one packet sent out in a time slot. Therefore, if there are compatible
1. Server module
2. Client Module
3. Sequence file transfer module
4. Simultaneous file transfer Module
5. Performance calculation module
Client Module
In this module the client system is activated to receive the file from the server
system. The client system user has to select the file receiving path and start the server.
The client is activated to receive the file from the server.
Server Module
Given Input - Work group name
Expected Output - Available systems in the network
Client Module
Given Input – Select the file receiving path
Expected Output – The users can get the respective source files from server.
Managed Data
With Managed Code comes Managed Data. CLR provides memory
allocation and Deal location facilities, and garbage collection. Some .NET languages use
Managed Data by default, such as C#, Visual Basic.NET and JScript.NET, whereas
others, namely C++, do not. Targeting CLR can, depending on the language you’re using,
impose certain constraints on the features available. As with managed and unmanaged
code, one can have both managed and unmanaged data in .NET applications - data that
doesn’t get garbage collected but instead is looked after by unmanaged code.
Constructors are used to initialize objects, whereas destructors are used to destroy
them. In other words, destructors are used to release the resources allocated to the object.
In C#.NET the sub finalize procedure is available. The sub finalize procedure is used to
complete the tasks that must be performed when an object is destroyed. The sub finalize
procedure is called automatically when an object is destroyed. In addition, the sub
finalize procedure can be called only from the class it belongs to or from derived classes.
Garbage Collection :
In C#.NET, the garbage collector checks for the objects that are not currently in use
by applications. When the garbage collector comes across an object that is marked for
garbage collection, it releases the memory occupied by the object.
Multithreading :
C#.NET supports structured handling, which enables us to detect and remove errors at
runtime. In C#.NET, we need to use Try…Catch…Finally statements to create exception
handlers. Using Try…Catch…Finally statements, we can create robust and effective
exception handlers to improve the performance of our application.
There are different types of application, such as Windows-based applications and Web-
based applications.
SECURITY
The runtime enforces code access security. The security features of the runtime
thus enable legitimate Internet-deployed software to be exceptionally feature rich. With
regards to security, managed components are awarded varying degrees of trust,
depending on a number of factors that include their origin to perform file-access
operations, registry-access operations, or other sensitive functions.
ROBUSTNESS:
The runtime also enforces code robustness by implementing a strict type- and
code-verification infrastructure called the common type system (CTS). The CTS ensures
that all managed code is self-describing. The managed environment of the runtime
eliminates many common software issues.
PRODUCTIVITY:
The runtime also accelerates developer productivity. For example, programmers
can write applications in their development language of choice, yet take full advantage of
the runtime, the class library, and components written in other languages by other
developers.
INTEROPERABILITY:
ADO.NET applications can take advantage of the flexibility and broad acceptance
of XML. Because XML is the format for transmitting datasets across the network, any
component that can read the XML format can process data. The receiving component
need not be an ADO.NET component.
The transmitting component can simply transmit the dataset to its destination
without regard to how the receiving component is implemented. The destination
component might be a Visual Studio application or any other application implemented
with any tool whatsoever.
The only requirement is that the receiving component be able to read XML. SO,
XML was designed with exactly this kind of interoperability in mind.
PERFORMANCE:
ADO.NET datasets offer performance advantages over ADO disconnected record
sets. In ADO.NET data-type conversion is not necessary.
SCALABILITY:
ADO.NET accommodates scalability by encouraging programmers to conserve
limited resources. Any ADO.NET application employs disconnected access to data; it
does not retain database locks or active database connections for long durations.
F in d a va ila b le s y s t e m
c li e n t
S e q u e n c e file t ra n s fe r
s e rve r
S im u lt a n e o u s file t ra n s fe r
P e rfo rm a n c e
Performance
Time taken for sequence
Time taken for simultaneous
Difference Calculation
Object diagram
File transfer
Network
Details Node Creation
sequence
Node simultaneous
Connection
Makes
connection
Node
Network sequence simultaneous
Connection
Connect_nod
Nodes Make Make
es
connection connection
Activity diagram
c lie n t
T im e d iffe re n c e
c a lc u la t io n
s e rve r
N e w S t a te
file tra n s fe r
Client
Server Network systems Performance
Start server
Select file
path
File transfer
File transfer
Time difference
login
3: Nework Details
1: Allocation
Server
Client
4: Access
2: Connections
5: calculation
Network
performance
Component Diagram
Network
Network scan
Server
Sequence
Simultaneous
Client
login Connection
Start
server Network
HA
Server S
Performance
Dataflow diagram
File
access
Client path
Server
Performance
Simultaneous
Al Habeeb College of Engineering and Technology 37
Project Flow Diagram
System Architecture
Start
server Client
Connecti
Performa
on File transfer nce
Sever
View
Testing is vital to the success of the system. System testing makes a logical
assumption that if all parts of the system are correct, the goal will be successfully
achieved. In the testing process we test the actual system in an organization and gather
errors from the new system operates in full efficiency as stated. System testing is the
stage of implementation, which is aimed to ensuring that the system works accurately and
efficiently.
In the testing process we test the actual system in an organization and gather
errors from the new system and take initiatives to correct the same. All the front-end and
back-end connectivity are tested to be sure that the new system operates in full efficiency
as stated. System testing is the stage of implementation, which is aimed at ensuring that
the system works accurately and efficiently.
The main objective of testing is to uncover errors from the system. For the
uncovering process we have to give proper input data to the system. So we should have
more conscious to give input data. It is important to give correct inputs to efficient
testing.
Testing is done for each module. After testing all the modules, the modules are
integrated and testing of the final system is done with the test data, specially designed to
show that the system will operate successfully in all its aspects conditions. Thus the
system testing is a confirmation that all is correct and an opportunity to show the user that
the system works. Inadequate testing or non-testing leads to errors that may appear few
months later.
1. Time delay between the cause and appearance of the problem. The
effect of the system errors on files and records within the system.
The testing process focuses on logical intervals of the software ensuring that all
the statements have been tested and on the function intervals (i.e.,) conducting tests to
uncover errors and ensure that defined inputs will produce actual results that agree with
the required results. Testing has to be done using the two common steps Unit testing and
Integration testing. In the project system testing is made as follows:
The procedure level testing is made first. By giving improper inputs, the errors
occurred are noted and eliminated. This is the final step in system life cycle. Here we
implement the tested error-free system into real-life environment and make necessary
changes, which runs in an online fashion. Here system maintenance is done every months
or year based on company policies, and is checked for errors like runtime errors, long run
errors and other maintenances like table verification and reports.
Unit testing verification efforts on the smallest unit of software design, module.
This is known as “Module Testing”. The modules are tested separately. This testing is
carried out during programming stage itself. In these testing steps, each module is found
to be working satisfactorily as regard to the expected output from the module.
Implementation is the stage of the project when the theoretical design is turned
out into a working system. Thus it can be considered to be the most critical stage in
achieving a successful new system and in giving the user, confidence that the new system
will work and be effective.
Future Enhancement
1 The Simultaneous Multiple Packet Transmission system can be also implanted in
web application.
2 The number of file receiving systems can be increased.
HOME PAGE
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;
namespace SMPT
{
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
}
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;
using Microsoft.Win32;
using System.Net;
using System.Net.Sockets;
using System.IO;
using System.Data.SqlClient;
using System.Diagnostics;
using System.Management;
using System.Threading;
namespace SMPT
{
cpuCounter.CategoryName = "Processor";
cpuCounter.CounterName = "% Processor Time";
cpuCounter.InstanceName = "_Total";
ramCounter = new PerformanceCounter("Memory", "Available MBytes");
}
}
public string getAvailableRAM()
{
return ramCounter.NextValue() + "";
}
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Text;
using System.Windows.Forms;
using System.Net;
using System.Net.Sockets;
using System.IO;
namespace SMPT
{
public partial class client : Form
{
obj.StartServer();
}
}
}
//FILE TRANSFER USING C#.NET SOCKET - SERVER
class FTServerCode
{
IPEndPoint ipEnd;
Socket sock;
public FTServerCode()
{
ipEnd = new IPEndPoint(IPAddress.Any, 5656);
sock = new Socket(AddressFamily.InterNetwork, SocketType.Stream,
ProtocolType.IP);
sock.Bind(ipEnd);
}
bWrite.Close();
clientSock.Close();
curMsg = "Received & Saved file; Server Stopped.";
}
Server process
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Text;
using System.Windows.Forms;
using System.Net;
using System.DirectoryServices;
using System.Runtime.InteropServices;
namespace SMPT
{
public partial class frmScanner : Form
{
public static string system;
public frmScanner()
{
InitializeComponent();
}
try
{
IPAddress IPAddress;
try
{
IPAddress = getIPByName(machine.Name);
}
catch(Exception ex)
{
continue;
}
DataRow dr = dt.NewRow();
dr[0] = machine.Name ;
dr[1] = IPAddress.ToString();
try
{
progressBar1.Value += 3;
if (progressBar1.Value >= 1000)
progressBar1.Dispose();
}
catch (Exception ex)
{
dt.Rows.Add(dr);
}
dgvComputers.DataSource = dt;
}
catch (Exception ex)
{
throw ex;
}
}
}
catch (Exception ex)
{
throw ex;
string s = dgvComputers.SelectedRows[0].Cells[0].Value.ToString();
listBox1.Items.Add(s);
system = listBox1.Text;
MessageBox.Show("Intimation send to " + s);
}
obj.listBox1.Items.Add(listBox1.Items[i]); ;
}
private void timer1_Tick(object sender, EventArgs e)
{
}
obj.Show();
}
s.Show();
}
}
}
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Net;
using System.Net.Sockets;
namespace SMPT
{
public partial class single : Form
{
public static string strgetlb;
public single()
{
InitializeComponent();
}
string p;
string pp;
string path;
string source;
string source1;
strgetlb = d.ToString( )
In this project, we have considered using MPT to improve the downlink performance of
the wireless LANs. With MPT, the AP can send two compatible packets simultaneously
to two distinct users. We have formalized the problem of finding a minimum time
schedule as a matching problem and have given a practical linear time algorithm that
finds a matching of specific size of a maximum matching. We studied the performance of
wireless LAN after it was enhanced with MPT. We gave analytical bounds for maximum
allowable arrival rate which measures the speedup of the downlink and our results show
that the maximum arrival rate increases significantly even with a very small compatibility
probability. We also used an approximate analytical model and simulations to study the
average packet delay and our results show that packet delay can be greatly reduced even
with a very small compatibility probability.
[5] Q. Liu, S. Zhou, and G.B. Giannakis, “Cross-Layer Scheduling with Prescribed QoS
Guarantees in Adaptive Wireless Networks,” IEEE J. Selected Areas in Comm., vol. 23,
no. 5, pp. 1056-1066, May 2005.
[6] V. Kawadia and P.R. Kumar, “Principles and Protocols for Power Control in Wireless
Ad Hoc Networks,” IEEE J. Selected Areas in Comm., vol. 23, no. 1, pp. 76-88, Jan.
2005.
In MPT, the sender makes the data sent for one user appear as zero at other users.
This is possible if the sender has more than one antenna. With multiple antennas, the
sender can adjust the amplitude and phase of the transmitted signals on different antennas
such that the signals will add up constructively or destructively as desired. Wireless
channels can be modeled as complex base band channels, which mean that with one
antenna at the sender, the receiver will receive y ¼ h_d, where d is the complex data sent
by the sender, and h is the complex channel coefficient. The receiver can recover the data
by dividing y by h. Note that here we consider flat fading, which means that there is no
inter symbol interference, and do not consider noise so that the core idea of MPT can be
more easily seen.
Advantages
1) Reducing actual file transfer time, the download time for each user can be
minimized.
2) Packet delay can be greatly reduced even with a very small compatibility
probability.
3) The maximum arrival rate increases significantly
APPLICATIONS
The Simultaneous Multiple Packet Transmission system can be used in many P2P
applications in web services, network banking, telemarketing, digital government,
distance education, distributed file sharing, content delivery networks, etc.