Vous êtes sur la page 1sur 32

c c 

 

? 
?  ??  ?

c 
c c 
 

INTRODUCTION
Surveillance
Surveillance is the monitoring of behavior. Systems Surveillance is the process of
monitoring the behavior of people, objects or processes within systems for conformity to
expected or desired norms in trusted systems for security or social control. Although the word
Surveillance in French literally means ´watching overµ the term is often used for all forms of
observation or monitoring, not just visual observation.

Surveillance in many modern cities and buildings often uses closed-circuit


television cameras. Although Surveillance can be a useful tool for law enforcement and security
companies, many people have concerns about the loss of privacy.

The word Surveillance is commonly used to describe observation from a distance


by means of electronic equipment or other technological means.

Surveillance is the art of watching over the activities of persons or groups from a
position of higher authority. Surveillance may be covert (without their knowledge) or overt
(perhaps with frequent reminders such as "we are watching over you"). Surveillance has been
an intrinsic part of human history. Modern electronic and computer technology have given
Surveillance a whole new field of operation.

-ebcam
A web camera (or webcam) is a real-time camera whose images can be
accessed using the -orld -ide -eb, instant messaging, or a PC video calling
application.-eb-accessible cameras typically involve a digital camera, which uploads images to
a web server, either continuously or at regular intervals. This may be achieved by a camera

c 
c c 
 

attached to a PC, or by dedicated hardware. Videoconferencing cameras typically take the form
of a small camera connected directly to a PC. Analog cameras are also sometimes used (often of
the sort used for closed-circuit television), connected to a video capture card and then directly
or indirectly to the Internet.

-hile the term "webcam" refers to the technology generally, the first part of
the term ("web-") is often replaced with a word describing what can be viewed with the
camera, such as a nestcam or streetcam.

Software:-ebcams connected to PCs can act as web-accessible cameras with


certain software; the software uploads pictures to an FTP server, from which they can be made
accessible to anyone, over the web.

Videoconferencing:As webcam capabilities have been added to instant


messaging text chat services such as Yahoo Messenger, -indows Live Messenger, over the
internet has now reached millions of mainstream PC users worldwide. Increased video quality
has helped webcam encroach on traditional video conferencing systems. Features and
performance vary between programs.

Overview of the Project


The Project, iSecurity implements the technique ¶Surveillance· which is the
process of observing or analyzing the behavior of a place or any object, and possibly the
webcam for capturing the object under surveillance.

The project provides a better way of monitoring the intended objects and
detecting any security breaks, because the concerned person authorized for security need not
worry about any attacks been not detected.

Here a webcam is connected to the server computer, which captures the media
and transmits through the network to IP-addresses of selected users. So users who own the
corresponding IP address can view the media content from anywhere just by using Internet and
go through the media. Also the media is automatically compared for detecting any security
faults. Reasonable difference between the images generates an alert message to inform the

c 
c c 
 

fault. Thus the user can ensure the security even without watching media at the right time.
Corresponding dissimilar images are also presented to the user simultaneously.

? The project, ·iSecurity· is developed on LINUX using the most efficient language,
Java. It makes use of client-server technology. The project also makes use of some media
processing tools like, JMF (Java Media Framework). JSP (Java Server Pages) is being used for
creating the user interfaces. It uses RTP (Real Time Transfer Protocol) for transferring the
captured media over the net. An additional protocol RTCP (Real Time Transfer Control
Protocol) is for assisting RTP. The project implements a little bit of database application using
MySql.

c 
c c 
 

????? ? ?
 ??   ?

c 
c c 
 

System Study
System study is the primary phase of the software development. It is the study of
existing operation to learn what they accomplish, why they work as they do and what role they
may have in future processing activities. In studying the current system, it is necessary to
identify the essential data and procedure required for a new approach. It is also necessary to
pinpoint current weakness and problem so that will not be carried over to the new system. The
purpose of system study is to identify the new system and establish what the new system is to
accomplish.

Selection of Software

Front end

 (jdk1.5.0):Java is very effective and effective language for network applications. It is
highly supported for new technologies and continuously updating with new API. The Java
Media Framework API (JMF) enables audio, video and other time-based media to be added to
applications and applets built on Java technology. This optional package, which can capture,
playback, stream, and transcode multiple media formats, extends the Java 2 Platform, Standard
Edition (J2SE) for multimedia developers by providing a powerful toolkit to develop scalable,
cross-platform technology.

Back end

?It is the inbuilt database for Linux. -ritten in C and C++. -orks on many different
platforms; APIs for C, C++, Eiffel, Java, Perl, PHP, Python, Ruby, and Tcl. Fully multi-
threaded using kernel threads, this means it can easily use multiple CPUs if available. In-

c 
c c 
 

memory hash tables which are used as temporary tables. SQL functions are implemented
through a highly optimized class library and should be as fast as possible! Clients may connect to
the MySQL server using TCP/IP Sockets, Unix Sockets (Unix), or Named Pipes (NT).

Overview of software

Java

i-catcher extensively used network communication and certain amount of database


management. Combining java·s features of sockets and remote method invocation, network
communication can be strongly implemented. For the database management java·s JDBC API
could be used.

In this project java is used. Object oriented programming is at the core of java. The
fundamental forces that necessitated to the invention of java are portability and security. Java
was designed to be easy for the professional programmers to learn and use effectively. The
object model in java is simple and easy to extend. The ability to create robust programs was
given a high priority in the design of java. Java supports multithreaded programming, which
allows writing programs that do many things simultaneously. The important goal of java is
write once, run anywhere, any time, and forever. Java is designed for distributed environment
of the environment because it handles TCP/IP protocol. Java programs carry with the
substantial amounts of run-time type information that is used to verify and resolve access to
objects at run-time. This makes it possible to dynamically link code in a safe and expedient
manner.

From the old days of structured procedural programming style, the world is now moving to
design approach of object-oriented programming. This can be implemented in C++. JAVA, in
addition to providing the C++ features, alsoprovides the built in classes which reduces
programming and length of code.

Java is the first programming language designed from the ground up with networking in
mind. As the global Internet continues to grow, Java is uniquely suited to build the next

c 
c c 
 

generation of the network applications. Java provides solutions to a number of problems:


platform independence, securities and international character sets being the most important
that are crucial to Internet applications, yet difficult to address in other languages. Together
these and other features of Java allow worrying that program may spread virus, steal their data,
orcrash their system. Indeed the intrinsic safety of Javaasfar greater than that of shrink-wrapped
software. One of the biggest secrets about Java is that it makes writing network programs easy.
In fact it is far easier to write a network program in Java rather than any other language. The
part of the program that deals with network is almost always the shortest and simplest. In is
also possible for the applets to communicate across the Internet.

Network adds a lot of power to a simple program. -ith networks a single program can
retrieve information residing in millions of computers located anywhere in the world. A single
program can communicate with tens or millions of people. A single program can harness the
power of many computers to work on one problem.

Thread
A thread is a program·s path of execution and multithreading enhance
performance and functionality by allowing a program to efficiency performmultiple tasks
simultaneously.

One way to handle requests from more than one client is to make the server program
multi-threaded. A multi-threaded server creates a thread for each communication it accepts
from a client. Using threads, a multi-threaded server program can accept a connection from a
client, start a thread for that communication, and continue listening for requests from other
clients.

Remote Method Invocation

RMI lets Java objects on different hosts communicate with each other by calling
methods in objects. A remote lives on a server. The clients can invoke each remote object
implements a remote interface that specifies which of its methods. Clients invoke the methods

c 
c c 
 

of the remote object almost exactly as they invoke local methods. A remote object is an object
with methods that may be invoke from a different Java virtual machine

Sockets

A socket is a software endpoint that establishes bi-directional communication


between a server program and one or more client programs. The socket associates the server
program with a specific hardware port on the machine where it runs so any client program
anywhere in the network with a socket associated with that same port could communication
with the server program.

A server program typically provides resources to a network of client programs.


Client programs send requests to the server program, and the server program responds to the
request.

The JDBC API

The JDBC API comes as a single Java package (java. sql) containing a series of classes.
These classes provide just the type of middleware needed to handle a relational database.
Basically, they allow you to establish a connection to a database and send queries. You can
process the results of these queries, retrieve meta-information on your database, and handle the
exceptions that might occur in the midst of all this.

Servers and clients

The whole point of a network is to allow two machines to connect and talk to each other.
Once the two machines have found each other they can have a nice, two-way conversation. But
how do they find each other? It·s like getting lost in an amusement park: one machine has to
stay in one place and listen while the other machine says ´hey, where are you?µ The machine
that ´stays in one placeµ is called the J  , and the one that seeks is called the  . This

c 
c c 
 

distinction is important only while the client is trying to connect to the server. Once they·ve
connected, it becomes a two-way communication process and it doesn·t matter anymore that
one happened to take the role of server and the other happened to take the role of the client. So
the job of the server is to listen for a connection, and that·s performed by the special server
object that you create. The job of the client is to try to make a connection to a server, and this
is performed by the special client object you create.

Once the connection is made, you·ll see that at both server and client ends, the
connection is just magically turned into an IO stream object, and from then on you can treat
the connection as if you were reading from and writing to a file. Thus, after the connection is
made you will just use the familiar IO commands from Chapter 10. This is one of the very nice
features of Java networking.

JMF API (Java Media Framework)

The Java Media Framework API (JMF) enables audio, video and other time-based media to
be added to applications and applets built on Java technology. Any data that changes
meaningfully with respect to time can be characterized as time-based media. Audio clips, MIDI
sequences, movie clips, and animations are common forms of time-based media.

Time based Media with JMF

To present time-based media such as audio or video with JMF, you use a Player. Playback
can be controlled programmatically, or you can display a control-panel component that enables
the user to control playback interactively. If you have several media streams that you want to
play, you need to use a separate Player for each one. to play them in sync, you can use one of
the Player objects to control the operation of the others.

c 
c c 
 

A Processor is a special type of Player that can provide control over how the media data is
processed before it is presented. -hether you·re using a basic Player or a more advanced
Processor to present media content, you use the same methods to manage playback. The
MediaPlayer bean is a Java Bean that encapsulates a JMF player to provide an easy way to
present media from an applet or application. The Media Player bean automatically constructs a
new Player when a different media stream is selected, which makes it easier to play a series of
media clips or allow the user to select which media clip to play

Streaming Media

A key characteristic of time-based media is that it requires timely delivery and


processing. Once the flow of media data begins, there are strict timing deadlines that must be
met, both in terms of receiving and presenting the data. For this reason, time-based media is
often referred to as J  
 it is delivered in a steady stream that must be received and
processed within a particular timeframe to produce acceptable results.

Media Streams

A  J  is the media data obtained from a local file, acquired over the network,
or captured from a camera or microphone. Media streams often contain multiple channels of
data called  J. For example, a QuickTime file might contain both an audio track and a video
track. Media streams that contain multiple tracks are often referred to as   or   
media streams.    
is the process of extracting individual tracks from a complex
media stream. A tracks  identifies the kind of data it contains, such as audio or video. The
  of a track defines how the data for the track is structured. A media stream can be
identified by its location and the protocol used to access it. For example, a URL might be used
to describe the location of a QuickTime file on a local or remote system. If the file is local, it
can be accessed through the FILE protocol. On the other

c 
c c 
 

hand, if it·s on a web server, the file can be accessed through the HTTP protocol. A 
 provides a way to identify the location of a media stream when a URL cannot be used.

 !?"#$%"?&'?(?&#)*$!+ ?&&*$ !')?#*?,*-?#,? #?!"? .!$ ?

?/..? data transfer is initiated and controlled from the client side. For example, Hypertext
Transfer Protocol (HTTP) and FILE are pull protocols.

/",?the server initiates data transfer and controls the flow of data. For example, Real-time
Transport Protocol (RTP) is a push protocol used for streaming media. Similarly, the SGI
MediaBase protocol is a push protocol used for video-on-demand (VOD).

?
?

Common Media Formats


?
?
?
*$%# *'#'#?0 /.!# 1/!$%'#" ' -! #,?
? Cinepak AVIQuickTime Medium Low High
MPEG1 MPEG High High High
?
H.261 AVI RTP Low Medium Medium

? H.263 QuickTime AVI RTP Medium Medium Low


JPEG QuickTime AVI RTP High High High
?
?

c 
c c 
 

Media Processing

In most instances, the data in a media stream is manipulated before it is presented to


the user. Generally, a series of processing operations occur before presentation:

ù? If the stream is multiplexed, the individual tracks are extracted.


ù? If the individual tracks are compressed, they are decoded.
ù? If necessary, the tracks are converted to a different format.
ù? Effect filters are applied to the decoded tracks (if desired).

Media Capture

Time-based media can be captured from a live source for processing and playback. For
example, audio can be captured from a microphone or a video capture card can be used to
obtain video from a camera. Capturing can be thought of as the  phase of the standard
media-processing model. A capture device might deliver multiple media streams. For example,
a video camera might deliver both audio and video. These streams might be captured and
manipulated separately or combined into a single, multiplexed stream that contains both an
audio track and a video track.

Capture Devices

To capture time-based media you need specialized hardware for example, to capture
audio from a live source, you need a microphone and an appropriate audio card. Similarly,
capturing a TV broadcast requires a TV tuner and an appropriate video capture card. Most
systems provide a query mechanism to find out what capture devices are available. Capture
devices can be characterized as either push or pull sources. For example, a still camera is a pull

c 
c c 
 

source in the user controls when to capture an image. A microphone is a push source in the live
source continuously provides a stream of audio. The format of a captured media stream
depends on the processing performed by the capture device. Some devices do very little
processing and deliver raw, uncompressed data. Other capture devices might deliver the data
in a compressed format.

Capture Controls

Controls are sometimes provided to enable the user to manage the capture process.
For example, a capture control panel might enable the user to specify the data rate and
encoding type for the captured stream and start and stop the capture process

Real-Time Transport Protocol (RTP)

RTP provides end-to-end network delivery services for the transmission of real-time
data. RTP is network and transport-protocol independent, though it is often used over UDP.
RTP can be used over both unicast and multicast network services. Over a J network
service, separate copies of the data are sent from the source to each destination. Over a
J network service, the data is sent from the source only once and the network is
responsible for transmitting the data to multiple locations. Multicasting is more efficient for
many multimedia applications, such as video conferences. The standard Internet Protocol (IP)
supports multicasting.?

RTP Services
?
RTP enables you to identify the type of data being transmitted, determine hat order
the packets of data should be presented in, and synchronize media streams from different
sources. RTP data packets are not guaranteed to arrive in the order that they were sent in fact,
they are not guaranteed to arrive at all. It is up to the receiver to reconstruct the sender·s
packet sequence and detect lost packets using the information provided in the packet header.
-hile RTP does not provide any mechanism to ensure timely delivery or provide other quality

c 
c c 
 

of service guarantees, it is augmented by a control protocol (RTCP) that enables you to


monitor the quality of the data distribution. RTCP also provides control and identification
mechanisms for RTP transmissions.

There are several types of RTCP packets:

ù? Sender Report
ù? Receiver Report
ù? Source Description
ù? Bye
ù? Application-specific

If quality of service is essential for a particular application, RTP can be used over a resource
reservation protocol that provides connection-oriented services.

RTP Architecture

An RTP J JJ is an association among a set of applications communicating with RTP.


A network address and a pair of ports identify a session. One port is used for the media data
and the other is used for control (RTCP) data. A  is a single machine, host, or user
participating in the session. Participation in a session can consist of passive reception of data
(receiver), active transmission of data (sender), or both. Each media type is transmitted in a
different session. For example, if both audio and video are used in a conference, one session is
used to transmit the audio data and a separate session is used to transmit the video data. This
enables participants to choose which media types they want to receive for example, someone
who has a low-bandwidth network connection might only want to receive the audio portion of
a conference.

c 
c c 
 

Transmitting RTP Media Streams

To transmit an RTP stream, you use a Processor to produce an RTPencoded Data Source
and construct either a Session Manager or Data Sink to control the transmission. The input to
the Processor can be either stored or live captured data. For stored data, you can use a Media
Locator to identify the file when you create the Processor. For captured data, a capture Data
Source is used as the input to the Processor, as described in Capturing Media Data.

There are two ways to transmit RTP streams:

ù? Use a Media Locator that has the parameters of the RTP session to construct an RTP
Data Sink by calling Manager.createDataSink.
ù? Use a session manager to create send streams for the content and control the
transmission.

If you use a Media Locator to construct an RTP Data Sink, you can only transmit the first
stream in the Data Source. If you want to transmit multiple RTP streams in a session or need to
monitor session statistics, you need to use the Session Manager directly. Regardless of how you
choose to transmit the RTP stream, you need to:

ù? Create a Processor with a Data Source that represents the data you want to transmit.
ù? Configure the Processor to output RTP-encoded data.
ù? Get the output from the Processor as a Data Source.

Receiving and Presenting RTP Media Streams

JMF Players and Processors provide the presentation, capture, and data conversion
mechanisms for RTP streams. A separate player is used for each stream received by the session
manager. You construct a Player for an RTP stream through the standard Manager creates
Player mechanism.

You can either, Use a Media Locator that has the parameters of the RTP session and
construct a Player by calling Manager. CreatePlayer (MediaLocator).Construct a Player for a

c 
c c 
 

particular ReceiveStream by retrieving the DataSource from the stream and passing it to
Manager.createPlayer (DataSource).

If you use a MediaLocator to construct a Player, you can only present the first RTP stream
that is detected in the session. If you want to play back multiple RTP streams in a session, you
need to use the SessionManager directly and construct a Player for each ReceiveStream.
Network Session Manager Player Data Source

Creating a Player for an RTP Session

-hen you use a MediaLocator to construct a Player for an RTP session, the Manager
creates a Player for the first stream detected in the session. This Player posts a
RealizeCompleteEvent once data has been detected in the session. By listening for the
RealizeCompleteEvent, you can determine whether or not any data has arrived and if the
Player is capable of presenting any data. Once the Player posts this event, you can retrieve its
visual and control components, because a Player for an RTP media stream doesn·t finish
realizing until data is detected in the session, you shouldn·t try to use
Manager.createRealizedPlayer to construct a Player for an RTP media stream. No Player
would be returned until data arrives and if no data is detected, attempting to create a @ 
Player would block indefinitely. A Player can export one RTP-specific control, RTPControl,
which provides overall session statistics and can be used for registering dynamic payloads with
the SessionManager.

c 
c c 
 

JSP (Java Server Page)

JavaServer Pages (JSP) is a technology based on the Java language and enables the
development of dynamic web sites. JSP was developed by Sun Microsystems to allow server
side development. JSP files are HTML files with special Tags containing Java source code that
provide the dynamic content. JSP source code runs on the web server in the JSP Servlet
Engine. The JSP Servlet engine dynamically generates the HTML and sends the HTML output
to the client·s web browser. JSP is easy to learn and allows developers to quickly produce web
sites and applications in an open and standard way. JSP is based on Java, an object-oriented
language. JSP offers a robust platform for web development. Main reasons to use JSP:

ù? Multi platform
ù? Component reuse by using Javabeans and EJB.
ù? Advantages of Java.

You can take one JSP file and move it to another platform, web server or JSP Servlet engine.
HTML and graphics displayed on the web browser are classed as the presentation layer.

The Java code (JSP) on the server is classed as the implementation. By having a separation of
presentation and implementation, web designers work only one representation and Java
developers concentrate on implementing the application.

Steps required for a JSP request:

1.? The user goes to a web site made using JSP. The user goes to a JSP page (ending with
.jsp). The web browser makes the request via the Internet.
2.? The JSP request gets sent to the -eb server.
3.? The -eb server recognizes that the file required is special (.jsp), therefore passes the JSP
file to the JSP Servlet Engine.
4.? If the JSP file has been called the first time, the JSP file is parsed,
Otherwise go to step 7.

c 
c c 
 

5.? The next step is to generate a special Servlet from the JSP file. All the HTML required is
converted to println statements.
6.? The Servlet source code is compiled into a class.
a.? The Servlet is instantiated, calling the  and J  methods.
b.? HTML from the Servlet output is sent via the Internet.
c.? HTML results are displayed on the user·s web browser.

Linux

Linux is a freely distributed, multitasking, multi-user operating system that behaves


like UNIX. Designed specifically for the PC

The Linux kernel was originally developed for the Intel 80386 CPU's protected mode.

To make Linux widely acceptable, it supports a number of different file systems,


including those compatible with DOS and OS/2. Linux's own primary file system, called
ext2fs, is designed for optimal use of the disk.

Linux is ideally suited for application development and experimentation with new
languages. Several different compilers, including C, C++, Fortran, Pascal, Modula-2, LISP,
Ada, Basic, and Smalltalk, come with the distribution software. Many of the Linux compilers,
tools, debuggers, and editors are from the Free Software Foundation's GNU project.

Linux in networking

TCP/IP (Transmission Control Protocol/Internet Protocol) is the primary networking


system used by UNIX and Linux. TCP/IP is a full family of protocols that were developed for
the Internet, and you must use TCP/IP when you venture out onto the Internet. If you want to
connect with other UNIX machines, you will probably have to use TCP/IP as well. The Linux
TCP/IP implementation provides all the networking software and drivers usually associated
with a commercial UNIX TCP/IP package. -ith this implementation, you can create your
own local area network(LAN), attach to existing Ethernet LANs, or connect to the Internet.

c 
c c 
 

Networking is a strong feature of Linux, and will be dealt with in considerable detail
later in this book. You don't have to network your Linux system, of course, but a network is
cheap and simple to install and is a fantastic method for transferring files between systems. You
can network over modems, too, so you can have your friends' Linux machines on a network.

Advantages of Linux

!'/2? "*/$&? &* ? !"? 3$.? !"#$!(/#  Tens of thousands of programmers have
reviewed the source code to improve performance, eliminate bugs, and strengthen security.
No other operating system has ever undergone this level of review. This Open Source design
has created most of the advantages listed below.

!'/2? ,"? #,? ("#? #&,'!&.? "/00*$#? !.(. Linux is supported by commercial
distributors, consultants, and by a very active community of users and developers. In 1997, the
Linux community was awarded Info-orld's Product of the Year Award for Best Technical
Support over all commercial software vendors.

!'/2? ,"? '*? ' *$? .*&45!' The availability of source code means that every user and
support provider is empowered to get to the root of technical problems quickly and effectively.
This contrasts sharply with proprietary operating systems, where even top-tier support
providers must rely on the OS vendor for technical information and bug fixes.

!'/2?$/'"?*'??-! ?$')?*3?,$ -$ Most Linux systems are based on standard PC


hardware, and Linux supports a very wide range of PC devices. However, it also supports a
wide range of other computer types, including Alpha, Power PC, 680x0, SPARC, and Strong
Arm processors, and system sizes ranging from PDAs

!'/2?!"?2&0#!*'..?"#(. Properly configured, Linux systems will generally run until


the hardware fails or the system is shut down. Continuous up-times of hundreds of days (up to a
year or more) are not uncommon.

!'/2? ,"? #,? #**."? ' ? 00.!&#!*'"? */? '  Programs ranging from the market-
dominating Apache web server to the powerful GIMP graphics editor are included in most

c 
c c 
 

Linux distributions. Free and commercial applications meet are available to meet most
application needs.

!'/2? !'#$*0$#"? -!#,? %'? *#,$? #0"? *3? &*%0/#$? ""#%" Linux
communicates using the native networking protocols of Unix, Microsoft -indows 95/NT,
IBM OS/2, Netware, and Macintosh systems and can also read and write disks and partitions
from these and other operating systems.

!'/2?,"??.*-?#*#.?&*"#?*3?*-'$",!0 Although the Linux learning curve is significant,


the stability, design, and breadth of tools available for Linux result in very low ongoing
operating costs.

!'/2?..?3*$?*'?' ?*'?3*$?..66 All changes one makes in Open Source software will
benefit each and everyone, all over the world. -ithout exceptions or constraints.

c 
c c 
 

Apache and Jakarta Tomcat

If you've written any Java servlets or JavaServer Pages (JSPs), chances are that you've
downloaded Tomcat. That's because Tomcat is a free, feature-complete servlet container that
servlet and JSP developers can use to test their code. Tomcat is also Sun's reference
implementation of a servlet container, which means that Tomcat's first goal is to be 100%
complaint with the versions of the Servlet and JSP specification that it supports. However,
Tomcat is more than just a test server: many individuals and corporations are using Tomcat in
production environments because it has proven to be quite stable. Indeed, Tomcat is
considered by many to be a worthy addition to the excellent Apache suite of products.

A number of servlet containers are available today. The most popular one³and he one
recognized as the official servlet/JSP container³is Tomcat.

Originally designed by Sun Microsystems, Tomcat source code was handed over to the
Apache Software Foundation in October 1999. In this new home, Tomcat was included as part
of the Jakarta Project, one of the 6 projects of the Apache Software Foundation. -orking
through the Apache process, Apache, Sun, and other companies³with the help of volunteer
programmers worldwide³turned Tomcat into a world-class servlet reference
implementation. Two months after the handover, Tomcat version 3.0 was released. Tomcat
went through several 3. releases until version 3.3 was introduced. The successor of version
3.3 is the current version, version 4.0. The 4.0 servlet container (Catalina) is based on a
completely new architecture and has been developed from the ground up for flexibility and
performance.

Version 4.0 implements the Servlet 2.3 and JSP 1.2 specifications. Another popular
servlet container is JRun from Allaire Corporation. JRun is available in three editions:
Developer, Professional, and Enterprise. The Developer edition is free but not licensed for
deployment. The Professional and Enterprise editions grant you the license for deployment
with a fee. Tomcat by itself is a web server. This means that you can use Tomcat to service
HTTP requests for servlets, as well as static files (HTML, image files, and so on). In practice,
however, since it is faster for non-servlet, non-JSP requests, Tomcat normally is used as a

c 
c c 
 

module with another more robust web server, such as Apache web server or Microsoft Internet
Information Server. Only requests for servlets or JSP pages are passed to Tomcat. To write a
servlet, you need at least version 1.2 of the Java Development Kit. Implementation for both
servlets and JSP are not included in J2SE, but they are included in Tomcat. Tomcat is written
purely in Java.

c 
c c 
 

??7 ? 8?

c 
c c 
 

iSecurity
The project is a full-featured INFRARED security and surveillance program for the
home or business establishments. -e can use this project to monitor your home,
business from a remote location over the Internet using a webcam, either wireless or
wired. It can alert you INSTANTLY at a remote location when motion is detected at
a home location with a pop-up display of the live video. It can also send an SMS to
the mobile phone of that particular Administrator who have requested for the video,
or play an alarm sound. You can see logged video file recordings of detected motion
from anywhere within the LAN. Videos are transmitted through the Internet to IP
addresses of the Administrator, so that he can view the media content from anywhere
just by using Internet alone. Its great for live surveillance.

The project is implemented on a highly restricted area to ensure


the security of homes, business establishments or valuable things. The project is used
to send those frames that are cutting the IR rays kept on both sides of the cam to the
Administrator. The software typically captures the images as JPEG or MPEG files
and uploads them to the -eb Server. There are countless -ebcam sites on the
Internet that have cameras pointed at virtually everything. They provide videos of
intruders as well as offering the online equivalent of the live peep show to the clients
by the administrator.

?
?
?
?
* /."?

c 
c c 
 

i)? -eb Cam Capture


(a)?-hen an intruder or any moving things are cutting the IR rays, the
image will be captured.

ii)? Transmission and Reception


(a)?In this module the media content captured from the web cam is
multi casted via Internet. Also at the Administrator the user can
view the captured web cam content if he is an authorized person.

iii)?Alarm Section
(a)?An alarm set on in order to inform the problem.

iv)? Message Alerts


(a)?Automatic message alerts of triggered events will be sending.

v)? Light Alerts

(a)It will automatically turn on the light when the motion is detected

c 
c c 
 

'9 ?  ?


?
?
?
?
?
?
?
?
?
?
?
?
?

&*%%'  ?$$?$ -$?0&!3!&#!*'?

c 
c c 
 

ù? Processor : P4, 1GHz


ù? RAM : 256 MB memory
ù? Hard Disk Drive : 20 MB disk space
ù? Monitor : Resolution 1024 x 768
ù? Keyboard : 101/102 Natural Keyboard
ù? Mouse : PS/2Compatible
ù? CD ROM Drive : 52x max
ù? Ethernet :10/100 Ethernet LAN
ù? -eb cam : Logitech Quick cam Pro 4000

&*%%'  ?$$?*3#-$?0&!3!&#!*'?

ù? Operating System : LINUX EL-4


ù? Front End : JSP, Java (JDK 1.5)
ù? Back End : MySQL
ù? Tools used : JSP, JMF, RTP
ù? Server : Jakarta Tomcat5.5
ù? Browser : Opera, Mozilla Firefox

?
?
?
?
?
?

c 
c c 
 

&*%%'  ? .!'#?$ -$?0&!3!&#!*'?

ù? Processor : P4, 1GHz


ù? RAM : 256 MB memory
ù? Hard Disk Drive : 20 MB disk space
ù? Monitor : Resolution 1024 x 768
ù? Keyboard : 101/102 Natural Keyboard
ù? Mouse : PS/2Compatible
ù? CD ROM Drive : 52x max
ù? Ethernet :10/100 Ethernet LAN

&*%%'  ? .!'#?*3#-$?0&!3!&#!*'?

ù? Operating System : LINUX EL-4


ù? Front End : JSP, Java (JDK 1.5)
ù? Tools used : JSP, JMF, RTP
ù? Browser : Opera, Mozilla Firefox, Safari

c 
c c 
 

SYSTEM ANALYSIS
Description

Requirement Analysis
Requirement analysis is a software-engineering task that brings the gap
between the system-level software allocation and software design. Requirement analysis
enables the system engineer to specify software function and performance, indicates software·s
interface with other system element, and establish constraints that the software must need.
Finally the requirement specification provides the developer and the customer with the means
to access quality once the software is built. Requirement specification places a great deal of
responsibility on the system analyst, because the quality of the work performed at this point
show up latter in the characteristic of the new system.

Purpose
The requirements for the system that will satisfy the need of client and the
concerns of the uses have to be communicated to the developers. Software Requirement
Specification (SRS) is the medium through which the client·s needs are accurately specified;
indeed, SRS forms the basis of software development. A good SRS should satisfy all the parties-
something very hard to achieve and involving tradeoffs and persuasion. The purpose of this
document is to describe the complete external requirements and the interface of the proposed
system ´iSecurityµ

Scope?
This document is only once that describes the requirements of the system. It is
meant for use by developers, and will also be the basis for validating the final delivered system.
Any changes made to the requirements in the future will have togo through afinal change

c 
c c 
 

approval process. The developer is responsible for asking clarification,where necessary, and
will not make any alterations with out the permission of the client.

Feasibility Study
Feasibility Study is a test of system proposal according to its work ability, impact on the
organization, ability to meet user needs, and effective use of resources. The objective of a
feasibility study is to acquire a sense of scope of the problem. During the study, the problem is
crystallized, as aspects of the problems to be included in the system are determined.
Consequently costs and benefits are estimated with greater accuracy stage.

Feasibility Considerations
Three key considerations are involved in the feasibility analysis.

÷? Economical Feasibility?

? Technical Feasibility

Ë? Behavioral Feasibility

Economical Feasibility
? Economical analysis system is the most frequently used method for evaluating the
effectiveness of the Candidate system. It is more commonly known as cost/benefit and saving
that are expected from the Candidate System and compare them with costs. It benefits
outweigh costs; the decision is made to design and implement the system. Otherwise, further
justification or alteration in the proposed system will have to be made if it is having a chance of
being approved.

Technical Feasibility

c 
c c 
 

Technical feasibility centers on the organization to what extend it can support the proposed
system. The question to be answered is whether the organization is technically sound to
operate the system. The necessary hardware and software must be installed in the organization.
Again, considering the company management, system is presently having sufficient hardware to
implement the new system.

Behavioral Feasibility
People are inherently resistant to change while computers have been to know to facilitate
change. Behavioral feasibility determines how much effort will go into educating, selling and
training the user-staff on the candidate system. If the staff is computer illiterate then only an
introductory training is required for them. Otherwise, they must be given sufficient training is
required in data entry and operating the system.?

c 

Vous aimerez peut-être aussi