Networked Computer Systems

2011

Contents
Acknowledgement ..................................................................
Networked Computer Systems

2011

Disadvantages of the Client Server Architecture ...........................................
Networked Computer Systems

2011

Acknowledgement

With this subject and article I will be advising and explaining the way...
Networked Computer Systems

2011

Chapter-1

Introduction

Nowadays huge and massive organizations are looking for more se...
Networked Computer Systems

2011

Figure.1.1: Client/Server Shape
Source (javaword-2011)

Workstation power, workgroup emp...
Networked Computer Systems

2011

The usual client/server model, one server, sometimes called a DAEMON, is activated and a...
Networked Computer Systems

2011

Chapter-2

Client/Server Characteristic

According to A. McGraw-Hill (1996).
“The Client...
Networked Computer Systems

2011

 Examples
“The advances in networking have had the effect of making Client Server appli...
Networked Computer Systems
•

2011

Asymmetrical protocols: there is many-to-one relationship between clients and server. ...
Networked Computer Systems

2011

Merits and Demerits of the Client Server

The Merits of Client/Server Computing
Accordin...
Networked Computer Systems

2011

The Demerits of Client/Server Computing

Traffic congestion on the network has been an i...
Networked Computer Systems

2011

Chapter-3

Client/server architecture

Types of network architecture
According to Client...
Networked Computer Systems

2011

Figure 3.1 / 2-tier Client/ Server Architecture
Source (images.yourdictionary, client/se...
Networked Computer Systems
Advantages

2011
Disadvantages

Fast application development time.

Not suitable for dispersed,...
Networked Computer Systems

2011

The 3-tier alternate a few servers calls for many SQL queries and updates so that can pe...
Networked Computer Systems
Advantages

2011
Disadvantages

A change from one DBMS to other will only

Creates an increased...
Networked Computer Systems

2011

“In software engineering, multi-tier architecture often referred to as n-tier architectu...
Networked Computer Systems

2011

Client model
Based on InfoDev.biz, Client model (2011)
“A client is the requesting progr...
Networked Computer Systems

2011

Types
Clients are generally classified as either "fat clients", "thin clients", or "hybr...
Networked Computer Systems

2011

Advantages

Disadvantages

Centralized - Resources and data security are
controlled thro...
Networked Computer Systems
•

2011

This is the most primitive type of data service used for exchanging messages over the ...
Networked Computer Systems

2011

Figure 3.5 / Client/Server with the Database Servers
Source (channeldb2, security study ...
Networked Computer Systems

2011

Figure 3.6 / Client/Server with the Transaction Servers
Source (Google.com-2011)

At any...
Networked Computer Systems

2011

Application Architecture

Application architecture is the organizational design of an en...
Networked Computer Systems

2011

Disadvantages of the Client Server Architecture
According to University of New Mexico: D...
Networked Computer Systems

2011

central server, which checks to see if that username and password match up and if the co...
Networked Computer Systems

2011

Chapter 4

Requirements for the implementation of Client/Server

The requirements is the...
Networked Computer Systems

2011

Routing Infrastructure
“The routing infrastructure which consists of network cable, wire...
Networked Computer Systems

2011

Client/Server implementation environment

In science and engineering the system is part ...
Networked Computer Systems

2011

Client Environment

The client environment is made up of the applications and SQL Server...
Networked Computer Systems

2011

Server Environment

The server environment is made up of SQL Server Compact Edition Serv...
Networked Computer Systems

2011

Conclusion

The client/server process is between two PCs the first one is make the reque...
Networked Computer Systems

2011

Appendices
Work Breakdown Structure
Level-1
1. Chapter-1
2. Chapter-2

Level-2
1.1-Intro...
Networked Computer Systems
4. Chapter 4

4.1-Client-Server
Requirements.

2011

4.1.1-Network Interfaces.
4.1.2-Routing
In...
Upcoming SlideShare
Loading in...5
×

NCS

462

Published on

Networked Computer Systems

Published in: Technology
0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total Views
462
On Slideshare
0
From Embeds
0
Number of Embeds
0
Actions
Shares
0
Downloads
21
Comments
0
Likes
0
Embeds 0
No embeds

No notes for slide

NCS

  1. 1. Networked Computer Systems 2011 Contents Acknowledgement .................................................................................................................................................................. 3 Abstract ................................................................................................................................................................................... 3 Chapter-1................................................................................................................................................................................. 4 Introduction ......................................................................................................................................................................... 4 Chapter-2................................................................................................................................................................................. 7 Client/Server Characteristic ................................................................................................................................................ 7 The logical entities of Client/Server ................................................................................................................................... 8 Merits and Demerits of the Client Server ......................................................................................................................... 10 The Merits of Client/Server Computing ....................................................................................................................... 10 Enhanced Data Sharing ................................................................................................................................................. 10 The Demerits of Client/Server Computing ................................................................................................................... 11 Chapter-3............................................................................................................................................................................... 12 Client/server architecture .................................................................................................................................................. 12 Types of network architecture........................................................................................................................................... 12 2-tier Client/Server Architecture ................................................................................................................................... 12 3-tier Client/Server Architecture ................................................................................................................................... 14 The Main differences between 3-tier architecture And 2-tier architecture ................................................................... 15 N-Tier Architecture ....................................................................................................................................................... 16 Client model ...................................................................................................................................................................... 18 Types ............................................................................................................................................................................. 19 Advantages .................................................................................................................................................................... 20 Disadvantages ............................................................................................................................................................... 20 Server Model ..................................................................................................................................................................... 20 Types ................................................................................................................................................................................. 20 File Server ..................................................................................................................................................................... 20 Database Server............................................................................................................................................................. 21 Transaction Servers ....................................................................................................................................................... 22 Application Architecture ............................................................................................................................................... 24 Storage Area Network (SAN) ....................................................................................................................................... 24 Client/Server Page 1
  2. 2. Networked Computer Systems 2011 Disadvantages of the Client Server Architecture .............................................................................................................. 25 Client Server Architecture Advantages ............................................................................................................................. 25 Chapter 4 ............................................................................................................................................................................... 27 Requirements for the implementation of Client/Server .................................................................................................... 27 Client-Server Requirements .............................................................................................................................................. 27 Network Interfaces ........................................................................................................................................................ 27 Routing Infrastructure ................................................................................................................................................... 28 Network Protocol Establishment................................................................................................................................... 28 Communication Software ............................................................................................................................................. 28 Client/Server implementation environment ...................................................................................................................... 29 Client Environment ....................................................................................................................................................... 30 Server Environment ...................................................................................................................................................... 31 Conclusion ............................................................................................................................................................................ 32 Reference .............................................................................................................................................................................. 32 Appendices............................................................................................................................................................................ 33 Work Breakdown Structure .............................................................................................................................................. 33 Client/Server Page 2
  3. 3. Networked Computer Systems 2011 Acknowledgement With this subject and article I will be advising and explaining the way of the Client/Server technology. How this technology become popular by the opportunity we had in our study field. And the information that been given by our beloved lecturer Mr.ABUBAKAR, we are so grateful by him for what he been teaching us and advise us for. And greeting to the university that I been study for one year and gave me a huge acknowledgement in our field that I choose. Abstract In this article we will be providing the way of the Client/Server techniques, how this technology can be work as a Client and Server in the same time with an impeccable method. What are the challenging that can be stop the working of the Client/Server technology, and how it does implement on various places and different usage? Client/Server Page 3
  4. 4. Networked Computer Systems 2011 Chapter-1 Introduction Nowadays huge and massive organizations are looking for more security, ability, performance, and fulfillment the work. In that order they start to develop and create a new method or language that can be use for this particular field which is to make sending and receiving signals in better mean request of data by the appearance of Client/Server Technology. We are in the middle of a fundamental change in both technology and its application. Organizations today expect to get more value from their investments in technology. “Opportunities are available to organizations and people who are ready and able to race in the global market. A competitive global economy will ensure antiquation and obscurity to those who cannot or are unwilling to race. All organizations must look for ways to demonstrate value. We are finally seeing a preparation to rethink existing organizational structures and business practices”. This is slideshare.com (2008) “Organizations are aggressively constriction even as they try to aggressively expand their revenue base. There is more preparation to continue improvement practices and programs to eliminate redundancy and increase effectiveness. Organizations are becoming market-driven while remaining true to their business vision”. Client/server computing is the most effective source for the tools that empower employees with authority and responsibility. Client does send or request the order for a specific matter it want. Server receive the request or the order from the client and fulfill the requirements for returning back the matter that been asked from or by the client Client/Server Page 4
  5. 5. Networked Computer Systems 2011 Figure.1.1: Client/Server Shape Source (javaword-2011) Workstation power, workgroup empowerment, preservation of existing investments, remote network management, and market-driven business are the forces creating the need for client/server computing. The Client/server computing is an irresistible movement that is reshaping the way computers is being used. Though this computing is very young it is already in full force and is not leaving any area and corner of the computer industry untouched. The Client/Server application development requires mix skills that include transaction processing, database design, communication experience, graphical user interface design, and being Internet Savvy. The more advanced applications require knowledge of distributed objects and component infrastructures. Most client/server solutions today are PC LAN implementation that is personalized for the group that uses them. The Client/Server Computing has changed the way in which computers are being used. This has a unique feature of having a strong foothold on the entire range of the computer industry. “The client/server shape has become one of the critical ideas of network computing. Most business applications use the client/server model. So does the Internet main program, TCP/IP. In marketing, the term has been used to differentiate computing by smaller isolated computers from the massive centralized computing of mainframe computers. But this characteristic has largely disappeared as mainframes and their applications have also turned to the client/server model and become part of network computing”. Client/Server Page 5
  6. 6. Networked Computer Systems 2011 The usual client/server model, one server, sometimes called a DAEMON, is activated and awaits client requests. Typically, multiple client programs share the services of a common server program. Both client programs and server programs are often part of a larger program or application. Related to the Internet, your Web browser is a client program for an example that requests services, sending of Web pages or files from a Web server which technically is called a Hypertext Transport Protocol or HTTP server, in another computer somewhere on the Internet. Equally, your computer with TCP/IP installed allows you to make client requests for files from File Transfer Protocol FTP servers in other computers on the Internet. The Client/Server computing is an environment that satisfies the business need by suitably allocating the application processing between the client and the server processors. The protocol is the client requests the services from the server; the server processes the request and returns the result to the client. The communication mechanism is a message passing InterProcess communication (IPC) that enables the distributed placement of the client and server processes. The Client/Server is the generic model and fits what is known in the industry as the “cooperating processing” or “peer-to-peer”. The client/server computing is fundamentally platform independent. Client/Server Page 6
  7. 7. Networked Computer Systems 2011 Chapter-2 Client/Server Characteristic According to A. McGraw-Hill (1996). “The Client/Server is an architecture in which the user's PC (client) is the requesting machine and the server is the supplying engine, both of which are connected via a local area network (LAN) or a wide area network (WAN) such as the Internet. Client/server was as applications were migrated from minicomputers and mainframes with input/output terminals to networks of desktop computers.” “By the time the Servers become powerful computers or processes dedicated to managing disk drives like: (file server, print server, and network server). Beside the Client become as PC’s or workstation can be run applications. Clients rely on servers for resource and processing power help.” Based on Sue Smith, eHow Contributor (2010)  Characteristics “A typical Client Server system will involve a program running on one machine, the server, communicating with a program running on at least one other, and the client. The Web is the best known example of this system. When you browse a website, your Web browser (the client) sends a message request to the Web server on which the site is running. The server responds, normally with the content of the page you requested, and your browser then displays this.”  Principles “The basic principle of Client Server technology is that it allows resources to be used by multiple users at any time. In an average system, the data and core information for an application will all be stored at the server side. The clients provide access to this data, and many clients can have access to one server. Because the data is stored only in one place, the resulting applications are easier to secure and maintain.” Client/Server Page 7
  8. 8. Networked Computer Systems 2011  Examples “The advances in networking have had the effect of making Client Server applications widespread today. As well as the Internet, and the vast number of applications that run on it, many organizations use Client Server models in their database systems. Many different technologies are used to achieve Client Server models. Some of the most common ways to build client and server programs for the Web include HTML, JavaScript, and programming languages such as PHP and ASP.”  Benefits “There are many benefits to using Client Server technologies. Applications using a data store are better able to maintain their data if it is stored in one location, rather than being distributed along with the other application parts. A substantial proportion of the communication tools and techniques, including email and instant messaging, that are essential to today's industries and organizations would not be possible without Client Server interaction.”  Considerations “If you're planning to learn about Client Server technology for use in Web development, this will involve learning one or more programming languages. You will first need to learn the basics of HTML and client side technologies such as JavaScript. Server side programming usually involves a database, and a program (written, for example, in PHP or ASP) running on the server, sending the data to the client. Client Server technologies give you the ability to create dynamic, interactive and productive experiences for visitors to your site.” The logical entities of Client/Server According to F. Soesianto and Ismail K. Ibrahim (1998) • Service: client/server above all a relationship between processes running on split machines. The server process is a supplier of services. The client is a consumer of services. Initial, client/server provides a clean separation of function based on the idea of service. • Shared resources: a server can service many clients at the same time and regulate their access to shared resources. Client/Server Page 8
  9. 9. Networked Computer Systems • 2011 Asymmetrical protocols: there is many-to-one relationship between clients and server. Clients always initiate the dialog by requesting a service. Services are passively awaiting requests from the clients. In some cases a client may pass a reference to a callback object when it invokes a service. This lets the server call back the client. So the client becomes the server. • Transparency of location: the server is a process that can reside on the same machine as the client or 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. • Mix-and-match: the ideal client/server software is independent of hardware or operating system software platforms. • Message-based exchange: clients and servers are loosely coupled systems that interact through a message-passing mechanism. The message is the delivery mechanism for the service request and replies. • Encapsulation of services: the server is a “specialist.” A message tells a server what service is requested; it is then up to the server to determine how to get the job done. Servers can be upgraded without affecting the clients as long as the published message interface is not change. • Scalability: client/server systems can be scaled horizontally and vertically. Horizontal scaling means adding and removing client workstation with only a slight performance impact. Vertical scaling means either migrating to a larger and faster server machine or distributing the processing load across multiple servers. • Integrity: the server code and server data is centrally managed; which results in cheaper maintenance and the guarding of shared data integrity. At the same time, the clients remain personal and independent Client/Server Page 9
  10. 10. Networked Computer Systems 2011 Merits and Demerits of the Client Server The Merits of Client/Server Computing According to scripd.com (2010) “Client/server computing provides the capability to use the most cost-effective user interface, data storage, connectivity, and application services. Frequently, client/server products are deployed within the present organization but are not used effectively”. The client/server model provides the technological means to use previous investments in concert with current technology options. Organizations look into opportunities to use technology to provide business solutions. Service and quality competition in the marketplace further increases the need to take advantage of the benefits available from applications built on the client/server model. Client/server computing in its best implementations moves the data-capture and information-processing functions directly to the familiar worker that is, the worker with the ability to respond to errors in the data, and the worker with the ability to use the information to make it available. Enhanced Data Sharing  Data that is collected as part of the normal business process and maintained on servers immediately that would be available to all authorized users.  The use of Structured Query Language (SQL) to define and manipulate the data provides support for open access from all client processors and software.  SQL provide to all authorized users access to the information through a view that is constant with their business need. Transparent network services ensure that the same data is available with the same currency to all designated users. Client/Server Page 10
  11. 11. Networked Computer Systems 2011 The Demerits of Client/Server Computing Traffic congestion on the network has been an issue. As the number of simultaneous client requests to a given server increases, the server can become strictly overloaded. Contrast that to a P2P (Peer to Peer) network, where its bandwidth actually increases as more impasse are added, since the P2P network's overall bandwidth can be generally computed as the sum of the bandwidths of every impasse in that network. The client-server model lacks the robustness of the good P2P network. Under client-server, should a critical server fail, clients’ requests cannot be fulfilled. In P2P networks, resources are usually distributed among many pitfalls. Even if one or more pitfall depart and discard a downloading file, for example, the remaining nodes should still have the data needed to complete the download. Client/Server Page 11
  12. 12. Networked Computer Systems 2011 Chapter-3 Client/server architecture Types of network architecture According to Client/Server architecture, www.sei.cmu.edu “Another type of network architecture is known as a peer-to-peer architecture because each end point has equivalent responsibilities. Both client/server and peer-to-peer architectures are widely used, and each has unique advantages and disadvantages. Client-server architectures are sometimes called two-tier architectures. The leader of the client/server architecture does not use the terms fat client and the fat servers, unlike they refer to them are 2-tier, 3-tier and N-tier client/server architecture. This is the means by which they are functionally split or divided. The functional units contain of user interface, business logic and the shared data.” 2-tier Client/Server Architecture “2-tier software architecture is a file server software architecture design. The two-tier architecture purpose is to improve usability by supporting a (forms-based), user-friendly interface. The two-tier architecture improves expansion by accepting up to 100 users on time (file server architectures only accepting a dozen of users). It also offers flexibility by allowing data to be shared, usually within a homogeneous environment. The two-tier architecture requires minimal operator intermediation, and it’s frequently used in non-complex, non-time critical information processing systems.” Client/Server Page 12
  13. 13. Networked Computer Systems 2011 Figure 3.1 / 2-tier Client/ Server Architecture Source (images.yourdictionary, client/serverimages-2011) Two tier architectures consist of three components distributed in two layers: client (requester of services) and server (provider of services). The three components are: 1. User System Interface (such as session, text input, dialog, and display management services). 2. Processing Management (such as process development, process enactment, process monitoring, and process resource services). 3. Database Management (such as data and file services). The two-tier design allocates the user system interface exclusive to the client. It places database management on the server and splits the processing management between client and server, and creating two layers. The application logic is presenting at the client side within the user interface or it may be present within the database on the server or on the both. It is most popular because of its simplicity. These applications can be quickly built by using visual builder tools. This can be used for developing applications for decisions support system of small-scale groupware or may build a simple web publishing applications. Client/Server Page 13
  14. 14. Networked Computer Systems Advantages 2011 Disadvantages Fast application development time. Not suitable for dispersed, heterogeneous environments with rapidly changing business rules. Available tools are robust and lend themselves to Because of the bulk the application on logic is on the fast prototyping to insure user needs a met client, there is a problem of the client software accurately and completely. version control and new version redistribution. Conducive to environments with homogeneous Security can be complicated because the user may clients, homogeneous applications, and static require separate password for each SQL server business rules. accessed. 3-tier Client/Server Architecture According to Client/Server architecture, www.sei.cmu.edu “The three-tier software architecture is the limitations of the two-tier architecture. The third tier (middle tier server) is between the user interface (client) and the data management (server) setup. This middle tier provides a process management that business logic and rules are executed and would be able to accommodate hundreds of users (as compared to only 100 users with the two tier architecture) by providing functions such as queuing, application execution, and database staging.” Figure 3.2 / 3-tier Client/ Server Architecture Source (images.yourdictionary, client/serverimages-2011) Client/Server Page 14
  15. 15. Networked Computer Systems 2011 The 3-tier alternate a few servers calls for many SQL queries and updates so that can performs much better than the 2-tier. The three tier divided client/server architecture to include user system where user services are (such as session, text input, dialog, and display management). The Main differences between 3-tier architecture and 2-tier architecture Based on Prof. Sanjeev Setia, and McGraw-Hill (1996) “Two-tier architecture is client/server architecture, where a request to do some task and sent it to the server and the server responds by performing the task. Three-tier or multi tier architecture has client/server and database. Where the client request is sent to the server and the server turn to sends the request to the database. The database sends back the information data that been required to the server which in turn sends it to the client. In the modern two-tier architecture the server holds both the applications and the data. The applications reside on the server rather than the client, probably because the server will have more processing power and disk space than the PC. In the three-tier architecture the data and applications are split onto separate servers with the server-side distributed between a database server and an application server. The client is facing the end, simply requesting and displaying data. Reason being that each server will be dedicated to processing either data or application request, hence a more manageable system and less contention for resources will occur.” Client/Server Page 15
  16. 16. Networked Computer Systems Advantages 2011 Disadvantages A change from one DBMS to other will only Creates an increased need for network traffic involve a change to the part in the data access management, server load balancing, and fault layer. tolerance. A change in the Use Interface (from desktop to the Current tools are relatively immature and are more web, will need only some changes in the complex. components of the presentation layer. It has better wait balancing system because the Maintenance tools are currently inadequate for entire work load is divided. maintaining server libraries. This is a potential obstacle for simplifying maintenance and promoting code reuse throughout the organization. Security polices can be imposed without effecting the clients. N-Tier Architecture According to James Yang (2004) “This is a very important topic to consider when developing an application. Many elements need to be considered when deciding on the architecture of the application, such as performance, scalability and future development issues. When you are deciding on which architecture to use, first decide on which of the three aforementioned elements you think is most valuable as some choices you make will impact on others. For example, some choices that boost performance will impact on the scalability or future development of your design.” Usually N-Tier Architecture begins as a 3-Tier model and is expanded. It provides finer granularity. Granularity is the ability of a system, in this case, an application, to be broken down into smaller components or granules. The finer the granted the greater the flexibility of a system. It can also be referred to as a system’s modularity. Therefore, it refers to the pulling apart of an application into separate layers or finer grains. Client/Server Page 16
  17. 17. Networked Computer Systems 2011 “In software engineering, multi-tier architecture often referred to as n-tier architecture is a client-server architecture in which, the presentation, the application processing and the data management are logically separate processes. For example, an application that uses middleware to service data requests between a user and a database employs multi-tier architecture. The most widespread use of "multi-tier architecture" refers to three-tier architecture.” Figure 3.3 / N-tier Client/ Server Source (stackoverflow, N-Tier architecture-2008) Client/Server Page 17
  18. 18. Networked Computer Systems 2011 Client model Based on InfoDev.biz, Client model (2011) “A client is the requesting program or user in a client/server relationship. For example, the user of a Web browser is effectively making client requests for pages from servers all over the Web. The browser itself is a client in its relationship with the computer that is getting and returning the requested HTML file. The computer handling the request and sending back the HTML file is a server.” “A client is an application or system that accesses a remote service on another computer system, known as a server, by way of a network. The term was first applied to devices that were not capable of running their own stand-alone programs, but could interact with remote computers via a network. These dumb terminals were clients of the time-sharing mainframe computer.” “The client–server model is still used today. Client and server can run on the same machine and connect via UNIX domain sockets. Using Internet sockets a user may connect to a service operating on a possibly remote system through the Internet protocol suite. Servers set up listening sockets, and clients initiate connections that a server may accept. Web browsers are clients that connect to web servers and retrieve web pages for display. Most people use email clients to retrieve their email from their internet service provider's mail storage servers. Online chat uses a variety of clients, which vary depending on the chat protocol being used. Multiplayer online games may run as Game Clients on each local computer.” “Increasingly, existing large client applications are being switched to websites, making the browser a sort of universal client. This avoids the hassle of downloading a large piece of software onto any computer you want to use the application on. An example of this is the rise of webmail.” “In personal computers and computer workstations, the difference between client and server operating system is often just a matter of marketing - the server version may contain more operating system components, allow more simultaneous logins, and may be more expensive, while the client version may contain more end-user software.” Client/Server Page 18
  19. 19. Networked Computer Systems 2011 Types Clients are generally classified as either "fat clients", "thin clients", or "hybrid clients". Client Types Local Storage Local Processing Fat Client Yes Yes Hybrid Client No Yes Thin Client No No Fat a fat-with low-fat client, also known as a rich-poor client or thick-thin clientthe personal computers or laptops can operate independently. Programming languages and/or development tools for rich clients typically include Delphi, .NET Framework, Java and Visual Studio. Thin a thin client is a minimal sort of client. Thin clients use the resources of the host computer. A thin client's job is generally just to graphically display pictures provided by an application server, which performs the bulk of any required data processing. Programming environments for thin clients include JavaScript/AJAX (client side automation), ASP, JSP, PHP and other (depends on server-side backend and uses HTML pages or rich media like Flash, Flex or Silver light on client). Hybrid a hybrid client is a mixture of the above two client models. Similar to a fat client, it processes locally, but relies on the server for storage data. This approach offers features from both the fat client (multimedia support, high performance) and the thin client (high manageability, flexibility). The arrival of technologies such as Java allows hybrid clients the high performance required even for multimedia applications, with the data stored in the Cloud. Client/Server Page 19
  20. 20. Networked Computer Systems 2011 Advantages Disadvantages Centralized - Resources and data security are controlled through the server. Scalability - Any or all elements can be replaced individually as needs increase. Flexibility - New technology can be easily integrated into system. Interoperability - All components Can have a single point of failure. Server can get overloaded. Generally more expensive and difficult to set up initially. (client/network/server) work together. Server Model Based on Pardeep, Types of Server (2005) “A Server is a computer or device on a network that manages network resources. For example, a file server is a computer and storage device dedicated to storing files Any user on the network can store files on the server. A print server is a computer that manages one or more printers and a network server is a computer that manages network traffic.” “Servers are often dedicated, meaning that they perform no other tasks besides their server tasks. On multiprocessing operating systems however, a single computer can execute several programs at once. A server in this case could refer to the program that is managing resources rather than the entire computer. Sometimes referred to as a type of middleware, application servers occupy a large chunk of computing territory between database servers and the end user, and they often connect the two.” Types File Server • File Servers are useful for sharing information across the network • The client passes a request for file records over a network to the file server. Client/Server Page 20
  21. 21. Networked Computer Systems • 2011 This is the most primitive type of data service used for exchanging messages over the network to find the requested data. Figure 3.4 / Client/Server with a File Server Source (blogs.technet, High Availability Scenarios-2011) • The file servers provide access to the remote server processors. In the typical implementation the software, shared data, databases and backups are stored on disk, tape and optical storage devices that are managed by the file server. Database Server • The client passes the SQL requests as messages to the database server; the result of each SQL command is returned over the network. • The code, which processes the SQL request and the data, reside in the same machine, the server uses its own processing power to find the requested data back to the client, instead of passing all the records back to the client. This results in a much more efficient use of the distributed processing power. • Note that the application code held on the client; thus you must either write code for the client or you can buy a shrink-wrap query tool to work on. • The database servers provide the foundation for decision support systems and also provide a key role in data storage. Client/Server Page 21
  22. 22. Networked Computer Systems 2011 Figure 3.5 / Client/Server with the Database Servers Source (channeldb2, security study material week2-2011) Transaction Servers • The client can appeal to remote procedure or services that reside on the server with an SQL database engine using the transaction server. • The network exchange consists of a single request/ reply. The SQL statements either all succeed or fail as a unit through the network. • These groups of SQL statements are called transactions. • With a transaction server you can create the client/server application by writing the code for both the client and the server assembled. • The client assembled usually includes the Graphical User Interface (GUI), the server component consists of SQL transaction against a database. These applications are called Online Transaction Processing or (OLTP). • The OLTP are mission-critical applications that require a very less response time between 1 to 3 sec per transaction. • The OLTP applications also require tight controls over the security and integrity of the database. • It has two forms.  TP-Lite: based on the stored procedures provided by database trader.  TP-Heavy: bases on the TP Monitors which is provided by OLTP trader. Client/Server Page 22
  23. 23. Networked Computer Systems 2011 Figure 3.6 / Client/Server with the Transaction Servers Source (Google.com-2011) At any place access to company via LAN, or WAN Internet, almost everyone works as client/server environment. However, to be true client/server, both client and server must share and work in business processing. The Internet revolves around the client-server architecture. Your computer runs software called the client and it interacts with software known as the server located at a remote computer. The client is usually a browser such as Internet Explorer, Netscape Navigator or Mozilla and other different website Browsers. Browsers interact with the server using a set of commands called protocols. These protocols help to be accurate transfer of data through requests from a browser and responses from the server. There are many protocols available on the Internet. The World Wide Web, which is a part of the Internet, brings all these protocols under one roof. You can use HTTP, FTP, Telnet, email etc. from one platform through your Browsers. Client-server software architecture is various uses and flexible in today’s fast-changing IT field. It is paradigm in structure and relies on messaging services for communication between components. They were designed to improve flexibility, usability, scalability, and interoperability. Software flexibility implies the ability for a program to change easily according to different users and different system requirements. Client/Server Page 23
  24. 24. Networked Computer Systems 2011 Application Architecture Application architecture is the organizational design of an entire software application, including all subcomponents and external applications interchanges. There are several design patterns that are used to define application architecture. These patterns help to communicate how an application will complete the necessary business processes as defined in the system requirements. A software application is a system designed to automate specific tasks in a logical manner to satisfy a set of requirements. Software applications rely on underlying operating systems and databases to store and perform tasks within the application. The application architecture is the drawing that defines how the software application will interact with servers and components within the domains of application layers. With the expansion of interoperability within software, modular components have been created that specialize in particular areas of business processes within an application. Application architecture is the process of defining all the components within the design and how they will communicate within the application. This definition includes all layers of an application. Storage Area Network (SAN) In storage networking terminology, a Storage Area Network SAN is a high-speed sub network of shared storage devices. A storage device is a machine that contains nothing but a disk or disks for storing data. A SAN architecture works in a way that makes all storage devices available to all servers on a LAN or WAN in the same time and equal processing. As more storage devices are added to a SAN, they too will be accessible from any server in the larger network. In this case, the server simply acts as a pathway between the end user and the stored data. Because stored data does not reside directly on any of networks servers, server power is exploiting for business applications, and network capacity is released to the end user. Client/Server Page 24
  25. 25. Networked Computer Systems 2011 Disadvantages of the Client Server Architecture According to University of New Mexico: Disadvantages of Client-Server (2010) Expense “Typically the central server computer must be enough powerful to maintain and share resources with other computers on the network. This entails require a high cost. Dependence The client/server network model count on the function and available centralized server. If the centralized server is removed from the system anyway or goes down due to problems, the entire network cannot function or work. However many client/server networks now have backup servers to provide supports when the main server is lost or down working. Congestion Centralized servers must handle the majority of the network traffic, as all queries for resources are directed toward the server. This can cause network congestion on the network and slow down response times for each computer available. Maintenance Client-server networks often require a staff with at least a single network administrator to manage and maintain the equipment and the network. Other network operating systems, such as peer-to-peer network systems, do not require a network administrator to maintain machines, as this work is distributed among individual clients and their related machines.” Client Server Architecture Advantages Based on University of New Mexico: Disadvantages of Client-Server (2010) Centralized Network Access Security “In a client-server network security is managed centrally, and security information such as user account names, passwords and computer names, are all stored in a database on a server. When a user turns on a computer, his username, password and the name of the computer that he is logged onto are sent to the Client/Server Page 25
  26. 26. Networked Computer Systems 2011 central server, which checks to see if that username and password match up and if the computer is a valid computer on the network.” Distribution of Resources “Client-server network architecture allows different networks resources to be distributed among multiple servers. Client users are allowed access only to the servers that contain data needed for them to perform their work. Without a client-server network, IT staff would have to keep every single server, including backup servers, individually updated with user account information and levels of access to all of the separate pieces of data on each server. It is very difficult to keep up security access information on a distributed server network such as this without client-server architecture.” Ease of Management “Major software manufacturers, such as Microsoft have a network management interfaces that are easyto-use and allow IT technicians to make security updates to the security database from a computer in any location that has network access to the server hosting the database. Without a client-server network in place, IT staff would have to make security updates on each individual computer affected by the security changes being applied. Human error in this case may lead to a lack of network access for some users. These users may find that they are unable to work until IT staffs are able to identify exactly which computer needs to have its security information reapplied before they can schedule a time to make the necessary changes.” Client/Server Page 26
  27. 27. Networked Computer Systems 2011 Chapter 4 Requirements for the implementation of Client/Server The requirements is the tools and methods that we need to implement a project or an structure to lead us into the right direction that we are looking to succeed the plan, moreover the requirements needs experts people to implement any technology within a study of the consequence that could happen if the implementation goes wrong somehow. And to study the location and the right tools that will be appropriate for the implementation without any obstacle. According to Martinka (1995) “Designing and building the distributed applications is a risky assignment without any modeling environment and experience. The techniques used in the past few years to design and manage monolithic applications are inadequate. A system model is no longer optional. This article highlights a critical need for the performance modeling in the area of client/server application design and management. It defines the functionality required in these models.” Client-Server Requirements Based on University of New Mexico: Hardware & Software Requirements for Client Server Computing (2011) Network Interfaces “Both the host and the client must have compatible network interfaces in order to communicate via a client-server network. A network interface also called network adapter, consists of hardware and software which allow the interface to communicate with the physical network, and the operating system to communicate with the interface. This consists of the interface hardware usually a PCMIA card, USB or Serial device, the firmware which runs the card embedded software on the hardware itself, and the operating system driver to communicate with the device. Commercial network interfaces come standard with all required hardware, firmware and driver software.” Client/Server Page 27
  28. 28. Networked Computer Systems 2011 Routing Infrastructure “The routing infrastructure which consists of network cable, wireless access points, routers and backbone Internet links, is critical to a Wide-Area Network (WAN) client/server model. Client traffic is routed through digital highways made up of network and fiber optic cable to the server, and back from the server to complete data exchange. The routing infrastructure allows each server and client to have an address usually an IP address, and to be uniquely located on the network.” Network Protocol Establishment Network protocols establish common methods of communications between clients and servers, much like languages for humans. The difference in computer network protocols is that each data packet chunk of data contains a header with address information similar to a postal envelope. Network protocols also establish which computer is the client or the server to sends data first, and what type of data need to sent at each point in the exchange. Most common data protocols are established under the ISO (Internet Standards Organization), therefore network device and software manufacturers frequently follow these standards.” Communication Software “Finally software tools drive the automatic communication between client and server. Most worthy among communications software are web browsers, such as Internet Explorer, Safari and Firefox, and email clients such as Microsoft Outlook, Mozilla Thunderbird or Apple Mail. Communication software simplifies client-server network exchange by providing a user interface (UI) and by automating the encapsulate into packets for transmission on the network much like the post office verifies the address and applies necessary labeling to postal mail.” Client/Server Page 28
  29. 29. Networked Computer Systems 2011 Client/Server implementation environment In science and engineering the system is part of the universe that is being studied, while the environment is the remainder of the universe that lies outside the boundaries of the system. It is also known as the surroundings, and in thermodynamics, as the reservoir. Depending on the type of system, it may interact with the environment by exchanging energy including heat and work, electric charge, or other conserved properties. In some discipline, such as information theory, information may also be exchanged. The environment is involved in analysis of the system. According to (msdn.microsoft.com, Client and Server Environment-2011) “Microsoft SQL Server 2005 Compact Edition (SQL Server Compact Edition) relies on several components in the client and server environments to exchange data between a device and an instance of Microsoft SQL Server. The following illustration shows the relationships among the different client and server components. Figure 4.1 / Client and Server Environment Source (msdn.microsoft, Client and Server Environment - 2011) Client/Server Page 29
  30. 30. Networked Computer Systems 2011 Client Environment The client environment is made up of the applications and SQL Server Compact Edition. The application is developed using the .NET Compact Framework and a Microsoft Visual Studio 2005 language such as Microsoft Visual Basic or Microsoft Visual C#, or by using Microsoft Visual C++ for Devices. SQL Server Compact Edition includes tools for setup, configuration, connectivity, and data access and modification; a query processor; a database storage engine; and programming APIs used to develop applications that access SQL Server Compact Edition data. It also includes  SQL Server Compact Edition Database Engine. The SQL Server Compact Edition Database Engine manages the SQL Server Compact Edition data store on supported devices. The Database Engine can track all database records that are inserted, updated, or deleted by maintaining a small amount of change tracking information with each record. The tracking functionality is enabled when you use one of the two connectivity solutions: replication or remote data access (RDA).  SQL Server Compact Edition Client Agent The SQL Server Compact Edition Client Agent is the primary component for connectivity on the supported devices. It implements the following custom SQL Server Compact Edition objects: Replication object Remote Data Access object Engine object By using these objects in your application, you can programmatically control connections to SQL Server. Client/Server Page 30
  31. 31. Networked Computer Systems 2011 Server Environment The server environment is made up of SQL Server Compact Edition Server Agent, Microsoft Internet Information Services (IIS), and SQL Server. The SQL Server Compact Edition Server Agent handles the HTTP requests made by the SQL Server Compact Edition Client Agent. The SQL Server Compact Edition Server Agent connects to SQL Server and returns the data and schema information to the SQL Server Compact Edition Client Agent through HTTP. Additional SQL Server connectivity components are involved in this process. They are also located on the computer that runs IIS, although they are not shown in the previous illustration. IIS IIS provides integrated Web server capabilities. Organizations of all sizes use IIS to host and manage Web pages on the Internet or on their intranet, to host and manage FTP sites, and to route news or mail by using the Network News Transport Protocol (NNTP) and the Simple Mail Transfer Protocol (SMTP). When used with SQL Server Compact Edition, IIS provides the protocol by which devices can connect to servers for transferring and exchanging data by using RDA or replication technologies. Microsoft SQL Server SQL Server is a set of components that work together to meet the data storage and analysis needs of the largest Web sites and enterprise data processing systems. It includes relational data management, data warehousing, and business intelligence components. SQL Server Compact Edition supports familiar SQL syntax and provides a development model and API consistent with SQL Server 2000 and later versions. Client/Server Page 31
  32. 32. Networked Computer Systems 2011 Conclusion The client/server process is between two PCs the first one is make the request and the other fulfils up the request. Companies are using the client/server because it does arrange the organization function. Choosing the correct client/server implementation in different environment is essential part to get an effective working system. With effective information system organization will be able to run the business effectively and efficiently. Correct design and implementation of client/server system in particular environment ensures that the system is able to provide services to clients continuously without decrease the performance. In the future, it is intended to add new services such as product customization where customers in the soon future will be able to build their own car design according to their specifications and desires. It will be on reality as the human kind accepts the principles of life needs. Reference      http://www.answers.com/topic/client-server-technology http://www.exforsys.com/tutorials/client-server/client-server-architecture.html http://www.wisegeek.com/what-is-client-server-architecture.html http://www.webopedia.com/TERM/C/client_server_architecture.html web.simmons.edu           www-bcf.usc.edu matrex.sourceforge.net http://www.ehow.com/facts_6973946_difference-peer-client-server-networks.html http://www.answers.com/topic/environment-systems#ixzz1KRVLkw5W http://msdn.microsoft.com/en-us/library/ms172075%28SQL.90%29.aspx http://www.ehow.com/about_6498339_client-server-technology.html http://www.developerfusion.com/article/3058/boosting-your-net-application-performance/2/ http://stackoverflow.com/questions/312187/what-is-n-tier-architecture http://www.infodev.biz/Clients.html http://www.go4expert.com/forums/showthread.php?t=325 Client/Server Page 32
  33. 33. Networked Computer Systems 2011 Appendices Work Breakdown Structure Level-1 1. Chapter-1 2. Chapter-2 Level-2 1.1-Introduction. 2.1-Client/Server Characteristic. Level-3 Level-4 2.1.1-The logical entities of Client/Server. 2.1.2-Merits and Demerits 2.1.1.1The Merits of of the Client Server. Client/Server Computing. 3. Chapter-3 3.1-Client/server architecture. 3.1.1-Types of network architecture. 2.1.1.2The Demerits of Client/Server Computing. 3.1.1.1-2-tier Client/Server Architecture. 3.1.1.2-3-tier Client/Server Architecture. 3.1.1.3-The Main differences between 3-tier architecture And 2-tier architecture. 3.1.1.4-N-Tier Architecture. 3.1.2.1-Types. 3.1.2.2-Advantages. 3.1.2-Client model. 3.1.2.3-Disadvantages. 3.1.2.4-Types. 3.1.3-Server Model. 3.1.4-Disadvantages of the Client Server Architecture. 3.1.5-Client Server Architecture Advantages. Client/Server Page 33
  34. 34. Networked Computer Systems 4. Chapter 4 4.1-Client-Server Requirements. 2011 4.1.1-Network Interfaces. 4.1.2-Routing Infrastructure. 4.1.3-Network Protocol Establishment. 4.1.4-Communication Software. 4.2-Client/Server implementation environment. Client/Server 4.2.1-Client Environment. Server Environment. Page 34

×