Avanthi Institute of Engineering and Technology Department of Information Technology
Avanthi Institute of Engineering and Technology Department of Information Technology
1. INTRODUCTION
1.1. INTRODUCTION
RECENT studies, on operational IEEE 802.11 wireless LANs (WLANs) have shown that traffic
load is often unevenly distributed among the access points (APs). In WLANs, by default, a user
scans all available channels and associates itself with an AP that has the strongest received signal
strength indicator (RSSI), while being oblivious to the load of APs. As users are, typically, not
evenly distributed, some APs tend to suffer from heavy load, while their adjacent APs may carry
only light load. Such load imbalance among APs is undesirable as it hampers the network from
fully utilizing its capacity and providing fair services to users. In this paper, we present a novel
load balancing scheme that reduces the load of congested APs by forcing the users near the
boundaries of congested cells to move to neighboring less congested cells. We achieve this via
cell size dimensioning by controlling the transmission power of the AP beacon messages. In this
paper, a WLAN cell is defined as a region in which the AP beacon signal has the strongest RSSI.
Our approach is conceptually similar to cell breathing in cellular networks, we present an
optimal algorithm that finds deterministic min-max load balancing solutions. Informally, a
WLAN is called min-max load balanced, if it is impossible to reduce the load of any AP without
increasing the load of other APs with equal or higher load. Our approach is practical since it does
not require either user assistance or standard modification.
1
AVANTHI INSTITUTE OF ENGINEERING AND TECHNOLOGY
Department of Information Technology
Cell Breathing Technique for Load Balancing in Wireless LANs INTRODUCTION
“.NET” is also the collective name given to various software components built
upon the .NET platform. These will be both products (Visual Studio.NET and Windows.NET
Server, for instance) and services (like Passport, .NET My Services, and so on).
The CLR is described as the “execution engine” of .NET. It provides the environment within
which programs run. The most important features are
2
AVANTHI INSTITUTE OF ENGINEERING AND TECHNOLOGY
Department of Information Technology
Cell Breathing Technique for Load Balancing in Wireless LANs INTRODUCTION
Managed Code
The code that targets .NET, and which contains certain extra
Information - “metadata” - to describe itself. Whilst both managed and unmanaged code can run
in the runtime, only managed code contains the information that allows the CLR to guarantee,
for instance, safe execution and interoperability.
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.
The CLR uses something called the Common Type System (CTS) to strictly enforce
type-safety. This ensures that all classes are compatible with each other, by describing types in a
common way. CTS define how types work within the runtime, which enables types in one
language to interoperate with types in another language, including cross-language exception
handling. As well as ensuring that types are only used in appropriate ways, the runtime also
ensures that code doesn’t attempt to access memory that hasn’t been allocated to it.
The CLR provides built-in support for language interoperability. To ensure that you can
develop managed code that can be fully used by developers using any programming language, a
set of language features and rules for using them called the Common Language Specification
3
AVANTHI INSTITUTE OF ENGINEERING AND TECHNOLOGY
Department of Information Technology
Cell Breathing Technique for Load Balancing in Wireless LANs INTRODUCTION
(CLS) has been defined. Components that follow these rules and expose only CLS features are
considered CLS-compliant.
The set of classes is pretty comprehensive, providing collections, file, screen, and
network I/O, threading, and so on, as well as XML and database connectivity.
The class library is subdivided into a number of sets (or namespaces), each
providing distinct areas of functionality, with dependencies between the namespaces kept to a
minimum.
The multi-language capability of the .NET Framework and Visual Studio .NET enables
developers to use their existing programming skills to build all types of applications and XML
Web services. The .NET framework supports new versions of Microsoft’s old favorites Visual
Basic and C++ (as VB.NET and Managed C++), but there are also a number of new additions to
the family.
Visual Basic .NET has been updated to include many new and improved language
features that make it a powerful object-oriented programming language. These features include
inheritance, interfaces, and overloading, among others. Visual Basic also now supports
structured exception handling, custom attributes and also supports multi-threading.
4
AVANTHI INSTITUTE OF ENGINEERING AND TECHNOLOGY
Department of Information Technology
Cell Breathing Technique for Load Balancing in Wireless LANs INTRODUCTION
Visual Basic .NET is also CLS compliant, which means that any CLS-compliant
language can use the classes, objects, and components you create in Visual Basic .NET.
Managed Extensions for C++ and attributed programming are just some of the
enhancements made to the C++ language. Managed Extensions simplify the task of migrating
existing C++ applications to the new .NET Framework.
Active State has created Visual Perl and Visual Python, which enable .NET-aware
applications to be built in either Perl or Python. Both products can be integrated into the Visual
Studio .NET environment. Visual Perl includes support for Active State’s Perl Dev Kit.
FORTRAN
COBOL
Eiffel
5
AVANTHI INSTITUTE OF ENGINEERING AND TECHNOLOGY
Department of Information Technology
Cell Breathing Technique for Load Balancing in Wireless LANs INTRODUCTION
C#.NET is also compliant with CLS (Common Language Specification) and supports
structured exception handling. CLS is set of rules and constructs that are supported by the
CLR (Common Language Runtime). CLR is the runtime environment provided by the .NET
Framework; it manages the execution of the code and also makes the development process
easier by providing services.
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.
6
AVANTHI INSTITUTE OF ENGINEERING AND TECHNOLOGY
Department of Information Technology
Cell Breathing Technique for Load Balancing in Wireless LANs INTRODUCTION
GARBAGE COLLECTION
Garbage Collection is another new feature in C#.NET. The .NET Framework monitors
allocated resources, such as objects and variables. In addition, the .NET Framework
automatically releases memory for reuse by destroying objects that are no longer in use.
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.
OVERLOADING
MULTITHREADING:
C#.NET also supports multithreading. An application that supports multithreading can handle
multiple tasks simultaneously, we can use multithreading to decrease the time taken by an
application to respond to user interaction.
There are different types of application, such as Windows-based applications and Web-based
applications.
8
AVANTHI INSTITUTE OF ENGINEERING AND TECHNOLOGY
Department of Information Technology