Network Manager in c#
-
Upload
anuj-gupta -
Category
Documents
-
view
222 -
download
3
description
Transcript of Network Manager in c#
Project Specification Form NETWORK MANAGER
Project Title
NETWORK MANAGER (Based on network monitoring and bandwidth management)
Brief description on project background. (.i.e. problem context, rationale, description of
problem area, nature of challenge).
What is the situation? (Problem Context)
Internet is the key to success of any companies or organization. Internet generally suffers the
problem of traffic congestion and slows down because of increase in numbers of IP’s as the
users increase. End users will naturally consume as much bandwidth as they can. In fact, they
are constantly encouraged to do so by sites with ever more bandwidth-eating content and
applications. Networking protocols inherently facilitate this consumption with windowing
protocols that attempt to increase packet rates to the maximum extent possible. It has often
been remarked that bandwidth consumption is like a gas, it increases to fill the maximum
available space. This causes invariable share of bandwidth and many users did not get the
required bandwidth whenever required. If any company is facing this problem then it affects
the company’s credibility. Generally companies waste down their time in knowing that what
users are doing with the internet connections and services and try to find out the reason for
invariable usage of bandwidth. Companies are facing problem in handling the incoming
bandwidth which they are providing to the users. They have to monitor various things. There
is no such perfect solution available for this problem because it is very costly affair to
monitor each and every aspect of the network and managing the bandwidth according to it.
Why do we need this project? (Rationale)
The need for network monitoring corresponds to the size of the network. Small networks with
few users might be easily managed without it. A large network with many users is more
difficult to monitor. Unlike a small network where administrators might be able to visually
inspect each network users regularly, large networks requires the use of network monitoring
to make it possible to track all network users from a single computer. Thus, these
technologies become more useful and more essential as networks expand. Since almost all
Project Specification Form NETWORK MANAGER
network links are shared by multiple users and applications, the available bandwidth must be
shared. Bandwidth management tools enable us to manage how the bandwidth is shared. If a
network link is continuously congested, the link must be upgraded to provide greater
capacity. In many cases, however, the average load on a link is within the link capacity, and
the link is only congested temporarily. Temporary congestion is sometimes predictable; for
example, there are typically peaks in network use at particular time of the day or following a
particular event. Other causes of temporary congestion, such as the transferring a large file,
are not predictable. So to manage all these things there must be some solution to monitor the
whole network and manage the incoming bandwidth. NETWORK MANAGER will allow to
back the control of internet connection by prioritizing the limited bandwidth capacity based
on the requirement and the service needed such that all the users will have the required
bandwidth whenever needed.
“NETWORK MANAGER” will be a nice software for network monitoring and bandwidth
management. There are many features NETWORK MANAGER will provide that you will
not find in other network monitoring or bandwidth management software.
Tangible benefits
1. Cost saving:-Generally the software’s which are available in the market for network
monitoring and bandwidth management are very costly as compared to “NETWORK
MANAGER” which will be available at very low cost as compared to other available
software.
2. Multifunctional: - “NETWORK MANAGER” will offer many functionalities
which will not be available in other software’s, online reporting are some examples.
3. Choice: - “NETWORK MANAGER” will provide many choices such that making
pool sharing or not, allowing specific ports to the user which is only required.
4. Control: - The network administrator will have full control on managing each user
and control the incoming bandwidth after being log in.
5. Individual reporting:- the network administrator will be able to view many reports
to monitor the usage of each user and see the bandwidth usage of the network at
different section.
Project Specification Form NETWORK MANAGER
Intangible benefits
1. User satisfaction-user will certainly feel better if they will able get the required
bandwidth whenever needed and the network administrator will also be able to track
down everything.
2. Back up usage:- the administrator will have the backup of the bandwidth usage and
all the reports .
3. User-friendly envoirment:- the administrator will have very user-friendly
envoirment in terms of functionalities and will be very flexible for usage.
Description of problem area
One of the major concerns related to network monitoring and bandwidth management is
the security. There are different software’s available in the market but no one is providing
the complete security. The problem is faced to implement the various access and
bandwidth policy in one software and concerning about the security in terms of access
rights. The second problem area lies behind the online reporting of the various types of
reports that network administrator will need in order to track the network and see the
usage of incoming bandwidth at the various section of the network. Managing the
bandwidth by keeping in mind the various policies in order to fulfill all the needs of
network administrator is really a tuff task.
Nature of Challenge
In terms of Domain Analysis
My domain is Networking, So, every system that are based upon Networking domain
faces a major challenge, that is the security of the system. So that the main challenge
that I am going to furnish is the security problem. There are various organization
using network monitoring and bandwidth management software and their access
rights of users depend upon the the policy of company. Managing large no of users for
security purpose is really a challenging task.
In terms of Features
There are many features in the project which is a real challenge to implement.
Project Specification Form NETWORK MANAGER
1. Pool management for different section or a group of user.
2. Giving different type of bandwidth speed to different user.
3. online report generating of the bandwidth usage
The other major problem is gaining mastery in networking which is my domain is
a very wide topic and extracting the important area for my usage.
Brief description of project objectives. (.i.e. scope of proposal and deliverables)
“NETWORK MANAGER” is software that will help to manage a wide network. It will allow
the network administrator to manage the whole network and manage and distribute the
incoming bandwidth to the available user based upon the requirement and the policy of the
organization using it. It will manage the various aspect of network such as time period of
access of a particular group or user, data transfer limit of users, and to manage the upload and
download speed of a particular user.
The core features
1. Dividing the users into various section or groups and dividing bandwidth according to
it.
2. time period of access for a particular group or user
3. data transfer limit for particular group or user
4. connecting or disconnecting user
5. report generation for network administrator to view usage in the network
Enhanced features
1. Managing data transfer speed for particular group or user.
2. blocking sites
3. generating reports for every user usage
Special feature:
1. Managing the all the bandwidth management policy along with network monitoring
2. Online report generation for network administrator.
Scope of the Project.
Project Specification Form NETWORK MANAGER
“NETWORK MANAGER” is a software that will enable the network administrator to
monitor the network such as the user accessed sites, the usage of each user etc . It will also
help in managing the incoming bandwidth by implementing the various bandwidth
management policy. The users will get the advantage of getting divided in various section or
groups so that the user that will require high bandwidth will be in different group and those
who required less bandwidth will be in different group. In order to see that there is no
overtime usage of internet the users will allotted the time period in which they can access
internet services. There will be limit in the data transfer done by the particular user. Data
transfer speed can be provided depending upon the usage of the user. Those who will require
more speed can get the full bandwidth usage. The network administrator will be able to
connect or disconnect a particular user. He can block sites which he want the user not to
access. he can generate various reports according to the above scenarios in order to monitor
the whole network.
Limiting the project scope
1. System cannot specify the different ports for different purposei.e port management
cannot be done.
2. No sever management function for the given system.
Brief description of the resources needed by the proposal. (.i.e. hardware, software,
access to information / expertise, user involvement etc.)
Hardware Required
400 MHz processor.
512 MB RAM.
Pentium iv cpu
80 GB hard disk.
Ethernet Card.
A corporate LAN or Internet
Software Required:
Project Specification Form NETWORK MANAGER
Programming language: c# and asp.net
Software required: visual stdio.net2005
Programming tool: visual paradigm
Operating system: windows
Database:sql server
Access to information
I will take care of the privacy of the users who will use my system.the privacy will be in
terms of hiding the user details from the users each user will be given his own id and
password and all the details of the user will be available to the network administrator only.
Since the main user of my system will be network administrator he will be able to access all
details of the user .
“NETWORK MANAGER” will use the personal details provided in the following areas.
For registering a user
For fraud prevention purpose
Academic research being carried out and other information, techniques being learnt.
(i.e. what are the names of books you are going to read / data sets you are going to use)
The idea of this project struck on my mind when I observed the whole scenario of network
access problems in my college. There are various policies in college and the students are
restricted to various sites and also the use of internet service by teachers, students and other
staff members are different. So I thought of making software that can monitor the use of
particular user and manage the incoming bandwidth. Then I came to know that this is the
Project Specification Form NETWORK MANAGER
problem which is faced by many companies and the cost which they are paying to manage it
is very high and also there are no proper software available which solves all the problems
faced by it. Then. I interviewed Mr. Praveen saini who is the network administrator of our
college. He said me that college is using this type software but it’s costing in lakhs. The
second thing which I came to know was still it was not meeting all the requirements of
network monitoring and bandwidth management. So I decided to make software for this.
Then I start searching the different ways in which this network monitoring and bandwidth
management can be done . I tried to find out the key features that will be required for it. Then
I tried to search out the different ways and the policies which I can apply in order to manage
the incoming bandwidth . then I searched about the things which the network administrator
will need to monitor.then I thought the reports to be developed for the network administrator .
The research part is one of the most challenging module in my project because though many
kind of similar software’s are there existing in present day, but developing network
monitoring and bandwidth management software along with the many unique and different
features would be challenging .Therefore source of information would play a vital role in
developing this endevour.Internet would be one of the main source of information along with
many books, journals, magazines and piece of guidance and suggestions from experts and
professionals . Since my project covers mainly three areas networking, NET technology
and database browsing websites would give me innumerable information on respective topics
and reading books would also give me the desired information.
Books
1. Technical knowledge
Beginning C# 2005 Wrox publications
Black book of C#
Complete reference of C#
2. Networking knowledge
Data and computer communications by William Stallings.
Data communications and networking by Forouzan.
Local area network by Kieser.
3. Software engineering
Software project management in practice by Pankaj Jalote
Project Specification Form NETWORK MANAGER
Websites
1. www.java2s.com
2. www.csharp-station.com
3. www.c-sharpcorner.com
4. www.google.com (to find link to other related websites)
5. www.ciscopress.com
6. www.aspnetpro.com
7. www.bookware.com
Brief description of the development plan for the proposed project. (i.e. which software
methodology and why, the major areas of functions to be developed and the order in
which developed).
Software Methodology
A methodology is composed of one of the software development models used in conjunction
with one or more techniques, i.e., methodology = model + technique(s). The techniques of
prototyping, object-oriented are ways to implement different models.its the process how to
navigate through each phase of software process model.
There are many software methodologies available:-
1. spiral model:- The spiral model is a software development methodology which
combines both design and prototyping elements in software development stages, in
an effort to combine advantages of both top down and bottom up concepts It is also
known as the spiral lifecycle model, is a systems development method (SDM) used in
information technology (IT). The spiral model is intended for large, expensive, and
complicated projects.
Project Specification Form NETWORK MANAGER
2. prototyping model:-in this model a throwaway prototype is built to help understand
the requirements .this prototype is based on currently known requirements.
Development of prtotype gives client actual feel of system .
3. Waterfall model-The waterfall lifecycle is the natural way of managing the
development something innovative and complex. The project proceeds according to
clearly defined phases; a preceding phase must be completed before the next starts;
phase completion is judged by the outcome of the phase matching the requirements
defined by the previous phase
But I will be using is rational unified process(RUP)
Rational unified process is the is software development process which provides a very
disciplined approach to assign task and responsibilities within development organization.
There are many key features of it:-
1. 1.it supports an iterative approach to development that addresses the highest risk
items at every stage in the life cycle significantly reducing the projects risk profile.
2. The Rational Unified Process use the notions of use case and scenarios proscribed
in the process has proven to be an excellent. way to capture functional
requirements and to ensure that these drive the design, implementation and testing of
software, making it more likely that the final system fulfills the end user needs. They
provide coherent and traceable threads through both the development and the
delivered system
3. The Rational Unified Process provides systematic approach to defining an
architecture using new and existing components
Project Specification Form NETWORK MANAGER
4. The process shows you how to visually model software to capture the structure and
behavior of architectures and components. Visual abstractions help you communicate
different aspects of your software; see how the elements of the system fit together;
make sure that the building blocks are consistent with your code; maintain
consistency between a design and its implementation; and promote unambiguous
communication. The industry standard Unified Modeling Language (UML), created
by Rational Software, is the foundation for successful visual modeling.
5. Rational Unified Process assists you in the planning, design, implementation,
execution, and evaluation of these test types. Quality assessment is built into the
process, in all activities, involving all participants, using objective measurements and
criteria, and not treated as an afterthought or a separate activity performed by a
separate group.
6. The process describes how to control, track and monitor changes to enable successful
iterative development. It also guides you in how to establish secure workspaces for
each developer by providing isolation from changes made in other workspaces
The major areas of functions to be developed and the order in which developed
Stage 1: Inception phase
Tasks: Iteration 1: project proposal and planning
- Identifying the Project
- PPF discussion with supervisor
- Online submission of PPF
- Finalize project title with the supervisor
Tasks: Iteration 2: project specification
Project Specification Form NETWORK MANAGER
- Research on specification of the project
- Identify project task
-identify the project scope
- Limit project scope
- Identify Resources
- Identify techniques to be learn
- selecting the software methodology to be followed
- Prepare PSF
- Prepare Development Plan
- Prepare Test Plan
- Submit PSF
- WBS
- Prepare Gantt chart
Stage 2: Elaboration phase
Tasks: Iteration 1: research based on the system reqirement
- Primary research
- Research on the functionalities of the “NETWORK MANAGER”
- getting all the use reqirment
- deciding the modules of “NETWORK MANAGER”
Tasks: Iteration 2: Analysis of the system
- Analyze user requirement
-Analyze the primary research
- UML diagrams
- Screen Design
Tasks: Iteration 3: Technical Research
-Finalize the language and learn
Project Specification Form NETWORK MANAGER
- domain related research on particular language
- learning the technical skills
Stage 3: Construction phase
Tasks: Iteration1: Interface Design
-create interface design of “NETWORK MANAGER”
- Documenting the system
Tasks: Iteration 2: “NETWORK MANAGER” Modules
- Analyze the system
- Finalizing the module interface
- Implement the module
- Document the module
Stage 4: Transition phase
Tasks: Iteration 1: System Testing
-module wise testing
- Integrate all the modules
- Prepare a test plan
- Find the target users
- Testing and debugging the full system
Tasks: Iteration 2: Documentation
- system documentation
Tasks: Iteration 3: finishing touch up
Project Specification Form NETWORK MANAGER
.Brief description of the evaluation and test plan for the proposed project.
(I.e. what is the success criteria and how will be evaluated & implementation
will be tested, indicate the estimated size of the demonstration/test database)
Evaluation of the success criteria
The project will be successful if
a. It manages to achieve the most features mentioned in core as well as advanced
features so that it can be more efficient.
b. If it manages to save time of network administrator in monitoring the network
and manage the incoming bandwidth.
c. Use networking concepts to the best to make it work efficiently.
1. Learnability- how easily the user will able to learn to use the system.
2. Robustness- The degree to which a system or component can still function in the
presence of partial failures or other adverse, invalid, or abnormal conditions
3. User Friendliness-My target users should be comfortable in understanding the
interface and functions of “NETWORK MANAGER”
4. flexibility:-system will be flexible in terms of more features and functionality.
Project Specification Form NETWORK MANAGER
5. scalability:- the ability the enhance the software in near future as per requirement.
6. security:-system would be secure as each user will given their own ID and
PASSWORD so that network administrator can see who all are on network.
Test plan strategy
A good test plan and strategy is needed when we want to make a very efficient and
reliable system. there are different testing tools available for different technology
platform which will influence the test plan and execution done. I will be doing various
type of testing of my system throughout from starting. Testing will start from unit testing
and move towards the integration of the whole system. I will be doing following type of
testing.
1. Component testing (unit testing)- I will divide my whole system in unit
module in terms of the features and functionalities and then I will test each unit
individually. This will ensure about that my each features are completed and
logically correct.
2. Integration testing (system testing)- then I will combine all the units and
perform integration testing to see that all the design objective are met or not.
3. Interface testing;- I will perform interface testing to ensure that the
application is operating efficiently with all interface system.
4. security testing:-I will perform this testing to ensure that application system
control and all the features are functional or not
5. Performance testing:- I will perform performance testing to ensure that the
system is performing according to the user expectation .
6. Beta testing: - I will perform beta testing to ensure that the system are meeting
the functional requirement or not . it will also help in detecting system fault ,
failures and defects.