Professional Documents
Culture Documents
Overview
Broadcasting Chat Server is an application through which the user can communicate with
other users connected in the same network area (LAN).
Socket programming uses the client socket and server socket methods to connect the local
host to the named host and port
The communication between various users is done using server client model i.e. Client-Server
Architecture.
Several client machines are connected to their dedicated server ports and communication is
established.
In many cases, instant messaging includes added features which can make it
even more popular. For example Video Conferencing, Internet Calling, etc.
Only people who are inside the firewall will have access to the system.
Security Risks: IM connections usually occur in plain text, making them vulnerable
to eavesdropping. Also, IM client software often requires the user to expose open UDP
ports to the world, raising the threat posed by potential security vulnerabilities.
Compliance Risks: In addition to the malicious code threat, the use of instant
messaging at work also creates a risk of non-compliance to laws and regulations
governing use of electronic communications in businesses.
Inappropriate Risks: Organizations of all types must protect themselves from the
liability of their employees' inappropriate use of IM. The informal, immediate, and
ostensibly anonymous nature of instant messaging makes it a candidate for abuse in
the workplace.
Programming Environment
Java is used as the programming language for this Project
Why Java?
Simple
Object oriented
Robust
Secure
Architecture neutral
Portable
High performance
Multithreaded
Dynamic
Benefits of Java
Java comes with a large set of classes and methods, the Java API that can be used without having to
develop as much code from scratch.
Unlike C, Java primitive types, such as int, are always the same size in the number of bits which helps
achieve cross-platform compatibility
Java has exception-handling that requires a programmer to handle error-conditions such an Input/Output
errors.
Code compiles on one Java platform can be run on other platforms that support Java without
modification of either the source-code nor the byte-code. For example, this means that a person can
make a Java program for a Windows computer and have it run a Linux computer or a Mac computer.
Java consists of a package java.net which supports a simplified, object-oriented socket interface that
makes network communications considerably easier.
Java Bytecode
The Java platform differs from most other platforms in that it's a software-only
platform that runs on top of other hardware-based platforms.
The Java API is grouped into libraries of related classes and interfaces; these
libraries are known as packages.
Networking Classes in
Java
A client software process may initiate a communication session, while the server
waits for requests from any client.
Most Internet applications, such as email, web access and database access, are
based on the client/server model. For example, a Web browser is a client program
at the user computer that may access information at any web server in the world.
What is a Server?
What is a Client?
Network Packages
Thread Classes
Event Handling
Client Registration
Client Logout
Server Shutdown
Future Improvements
Making it more secure by providing password protection. We can handle user data
separately proving them password access. We can also improvise it for private
conversation with a user selected user.
Presently the project runs on the local network i.e. LAN or local wireless network but later
we can make this run on internet by providing public IP address and making it run global.
It can be enhanced in the field of voice chatting using VoIP Protocol and thus introduce
telecommunication through chatting software.
The End
Submitted by:
Yatharth Manocha
(03296402714)
Aamir Mustafa
(03696402714)
Himanshu Tyagi
(03796402714)
5th Semester