Professional Documents
Culture Documents
Application C
3 Data M
Fat Client:
2 Applic
These kind of clients are having the own
application.Based on this
Application, they can be activated. There is no need to depends
on the server.
Fat Clients are the more traditional form of Client/Server. The
bulk of the application runs on the client side of the equation. Fat
Clients are used for decision support and personal software. They
provide flexibility and opportunities for creating front-end tools
that let end-users create their own application.
Examples: Database Server, File Server
Thin Client:
These kind of clients are fully activated based on the
server only. It doesn’t have any own application.
SERVER:
A “server” is just a computer running a piece
of software that provides resources to clients.A computer or
software providing services to remote client machines or
applications, such as supplying page contents (texts or other
resources) or returning query results.
Types:
File Server
Database Server
Groupware Server
Object Server
Transaction Server
Web Server
File Server:
A Fileserver consists of large amount of files
that may be documents, images, engineering drawings and
other large data objects. File Servers are useful for sharing files
across a network. They are indispensable for creating shared
repositories of all types of files.
Database Server:
A Database server maintains databases and
uses its own processing power to find the requested data from
database. The Client passes SQL requests as messages to the
database server. The requests of each SQL command are
returned over the network. The result is a much more efficient
use of distributed processing power. The database servers
provide the foundation for decision support system.
Groupware Server:
Groupware addresses the management
of semi-structured information such as text, image, mail, bulletin
boards and the flow of work. This Client/Server System provides
direct communication between clients. Here applications are
created by using a scripting language and form-based interfaces.
People can directly contact with other people (like usenet,
newsgroup)
Example: Lotus Notes
Object Server:
The Client/Server applications are written
as a set of communicating Objects. Client objects communicate
with server objects using an instance of that Object Request
Broker (ORB). The ORB locates an instance of that object server
class, invokes the requested method, and returns the results to
the client objects. Server objects must provide supports for
concurrency and sharing
Eg of ORB:
DSOM->Distributed System Object Model
DOMF->Distributed Object Management Facility.
DOMS->Distributed Object Management System.
DOE-> Distributed Object Everywhere.
Transaction Server:
With a transaction server, Client invokes RPC that
resides on the server with sql database engine. This remote
procedure call(RPC) on the server execute a group of sql
statement.
TPM:
It monitors the transaction process. It will perform the
following operations.
1)Rollback
2)Commit
3)Abort
Web Server:
CLIENT-SERVER:
Client-Server:
Client/Server is separated logical entities i.e.
software programs that work together over a network to
accomplish a task. The client and server logical entities are
called as separate program units. The Client first initiates the
communication by passing request to server. The server gets
the request and produces the response and send back to the
client over on the network.
Client-Server Computing:
Client/Server Computing means scrapping
every mainframe that can’t fit on the desktop and the demise
of host-centric computing and also unleashing a new bread of
“born-again” networked mainframes that will bring every PC in
the enterprise back to the fold. This computing provides
Shared Resource:
The server provide many services to client and regulate
their access to shared resources.
Mix-and-Match:
Independent of hardware or operating system. ie ,
platform independent.
Encapsulation of Services;
Server provides various kinds of services to client
according to the request of client. Those services are
encapsulated in sever itself.
Scalability:
Client/server systems are scaled in two ways.
1) Horizontal way
- adding or removing clients with slight
impact.
2) Vertical way
-migrating to a larger and faster server
machine or multiservers.
Asymmetrical Protocols:
There is a many to one relationship between clients
and server. Clients always initiate the dialog by requesting
service . Servers are passively awaiting requests from the clients.
Transparency of Location:
The server is a process that can reside on the same
machine as the client or a on a different machine across a
network. Client/Server software usually masks the location of the
server from the clients by redirecting the service calls when
needed. A program can be a client, a server, or both.
Integrity:
The server code and data are centrally maintained,
which results in cheaper maintenance and the guarding of shared
data integrity. At the same time the clients remain personal and
independent.
Message Based Exchanges:
Clients and servers are loosed coupled systems that
interact through message passing mechanisms for the service
requests and replies.
MIDDLEWARE:
General Middleware:
General Middleware is the subtract for most
client/server interactions. It includes the Communication stacks,
distributed directories, authentication Services, Network time,
RPC and queuing services. This type also includes the network OS
extensions such as distributed file and print services.
Eg;
NetBios, LANServer, LANmanager, TCP/IP, APPC, DCE,
ONC+, NetWare, Named Pipes
Service-Specific MiddleWare:
Service-specific middleware is needed to accomplish a
particular client/server type of service.
This includes:
* Database-specific Middleware (ODBC, EDA/SQL)
* OLTP-specific Middleware (RPC,X/Open’s TxRPC)
* Groupware-specific Middleware (SMTP, Lotus Notes Calls)
* Object-specific Middleware (CORBA, DCOM)
* Internet-specific Middleware ( HTTP, S-HTTP ,SSL)
* System Management Specific Middleware (SNMP, ORB)
Fat servers:
The Fat Server model places more function on the server
Fat server applications are easier to manage and deploy on the
network because most of the code runs on the servers. Fat
servers try to minimize network interchanges by creating more
abstract levels of services.
Examples: Groupware Server, Transaction Server, Web Server.
Fat clients:
Fat Clients are the more traditional form of Client/Server.
The bulk of the application runs on the client side of the equation.
Fat Clients are used for decision support and personal software.
They provide flexibility and opportunities for creating front-end
tools that let end-users create their own application.
Examples: Database Server, File Server
“I want
collabor
with m
“I want to access colleagu
some information”
Here the communication is performed only between the client
and server. There is no intermediator, that is , no need of
interface like application server. The application logic is either
buried inside the user interface on the client or within the
database on the server or both.
3 TIER :
Three-t
Loc
Here interface is needed . Application logic is in the middle part
that is , It lives between the client and server. It is the middle tier.
KEY TECHNOLOGIES NEEDED FOR CLIENT-SERVER
APPLICATION
They are,
• Rich Transaction Processing
• Roaming Agents
• Rich data Management
• Intelligent self-managing entities
• Intelligent Middleware.
BUILDING BLOCKS:
Types:
• The Server Building Block
• The Client Building Block
• The Middleware Building Block
NETWARE:
IPX/SPX is a Netware’s native stack. IPX/SPX is an
implementation of the Xerox Network Services (XNS) transport
and network protocol. This is a cleaner version of TCP/IP protocol.
So this is required by LAN enterprises. The IPX/SPX network layer
is provided by the Internet Packet Exchange (IPX) protocol. This
provides unreliable services with connection oriented manner. So
the SPX is used on the top of IPX to achieve the reliable service
with datagram service.
NETBEUI:
Advantages are:
• Datagram Service
• Connection – oriented Service
• Dynamic Naming Service
Disadvantages are:
• Lack of network layer
• Lack of Security layer
NETBIOS:
The NetBIOS services are provided through a set of
commands, specified in a structure called Network Control Block
(NCB). The structure also contains the parameters associated
with the command and the fields in which NetBIOS will return
information to the program. A command can be issued in either
wait or no-wait mode. In wait mode, the requesting thread is
blocked until the command completes. In the no-wait mode,
control is returned to the calling thread at the earliest time
possible, usually before the command completes. When the
command completes, the NetBIOS DLL places a return code in
the NCB.
REMOTE PROCEDURE CALL(RPC);
RPC stands for Remote Procedure
Calls and it also invoke the process of server.This invoked
program runs across the wire in a different resource domain. A
Client process calls function on a remote server and suspends
itself until it gets back the results. Parameters are passed like in
any ordinary procedure. The RPC, like an ordinary procedure, is
synchronous. The RPC run-time software collects values for the
parameters ,forms a message , and sends it to the remote server.
The server receives the request, unpacks the parameters, calls
the procedure and sends the reply back to the client.
ISSUES OF RPC:
1) how are the server functions located and started?
2) How are parameters defined and passed between
client and server?
3) How are failures handled?
4) How is security handled by the rpc?
5) How does the client find its server?
6) How is data representation across systems handled?