Presentation is loading. Please wait.

Presentation is loading. Please wait.

Server Architecture Cathy Weisse MJ Parker Tony Denizard March 27, 2002 Blah Blah Blah.

Similar presentations


Presentation on theme: "Server Architecture Cathy Weisse MJ Parker Tony Denizard March 27, 2002 Blah Blah Blah."— Presentation transcript:

1 Server Architecture Cathy Weisse MJ Parker Tony Denizard March 27, 2002 Blah Blah Blah

2

3 Server Architecture Cathy Weisse MJ Parker Tony Denizard Presented By Blah Blah Blah

4

5

6 Server Architecture Cathy Weisse MJ Parker Tony Denizard What is a server? A server is a computer or device on a network that manages network resources. Most servers are dedicated. This means that they perform only one task rather than multiple 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. Blah Blah Blah

7 Server Architecture Cathy Weisse MJ Parker Tony Denizard What is a server? Examples : 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 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 printersA print server is a computer that manages one or more printers a network server is a computer that manages network traffic.a network server is a computer that manages network traffic. A database server is a computer system that processes database queries.A database server is a computer system that processes database queries. Blah Blah Blah

8 Server Architecture Cathy Weisse MJ Parker Tony Denizard What is architecture? A design.A design. The term architecture can refer to either hardware or software, or to a combination of hardware and software. The architecture of a system always defines its broad outlines, and may define precise mechanisms as well.The term architecture can refer to either hardware or software, or to a combination of hardware and software. The architecture of a system always defines its broad outlines, and may define precise mechanisms as well. Blah Blah Blah

9 Server Architecture Cathy Weisse MJ Parker Tony Denizard What is server architecture? Server architecture is the design and layout of a computer on a network that manages network resources.Server architecture is the design and layout of a computer on a network that manages network resources. Blah Blah Blah

10 Server Architecture Cathy Weisse MJ Parker Tony Denizard Major server components: StorageStorage Processing powerProcessing power MemoryMemory CacheCache I/O speed (busing)I/O speed (busing) Router (Multi servers)Router (Multi servers) BandwidthBandwidth Operating System SoftwareOperating System Software Administrative interfacesAdministrative interfaces Capabilities of the clients and/or networkCapabilities of the clients and/or network Blah Blah Blah

11 Server Architecture Cathy Weisse MJ Parker Tony Denizard A basic server: Blah Blah Blah

12 Server Architecture Cathy Weisse MJ Parker Tony Denizard Architectural Requirements: Large scale specific servers are built using preexisting system components such as storage devices, processors, and so on.Large scale specific servers are built using preexisting system components such as storage devices, processors, and so on. A basic server design is modeled from a home PC.A basic server design is modeled from a home PC. ProcessorProcessor StorageStorage I/O devicesI/O devices MemoryMemory PeripheralsPeripherals Blah Blah Blah

13 Server Architecture Cathy Weisse MJ Parker Tony Denizard Architectural Requirements: The characteristics of these already existing components strongly influence the structure of specific servers and the optimization policies used to address cost performance.The characteristics of these already existing components strongly influence the structure of specific servers and the optimization policies used to address cost performance. For specific server types, higher performance and more storage space would be required than would a basic mips machine.For specific server types, higher performance and more storage space would be required than would a basic mips machine. Faster singular or 2 or more processors.Faster singular or 2 or more processors. Larger storage capacityLarger storage capacity Increased memoryIncreased memory Blah Blah Blah

14 Server Architecture Cathy Weisse MJ Parker Tony Denizard Architectural Requirements: Most servers can achieve the level of service they desire if they base their architecture in terms of standard logical subcomponents.Most servers can achieve the level of service they desire if they base their architecture in terms of standard logical subcomponents. For example, if the storage component of a certain server is architectured as a file system (it provides a file system interface), it can be backed up by standard backup programs.For example, if the storage component of a certain server is architectured as a file system (it provides a file system interface), it can be backed up by standard backup programs. Blah Blah Blah

15 Server Architecture Cathy Weisse MJ Parker Tony Denizard Data Server Storage Subsystem Control Server Application Server NetworkSubsystem Data flow Control flow To Client Typical architecture: Blah Blah Blah

16 Data Server Storage Subsystem Control Server Application Server NetworkSubsystem Data flow Control flow To Clien t Architecture of a simple server Server Architecture Cathy Weisse MJ Parker Tony Denizard Typical architecture: The storage subsystem stores data.The storage subsystem stores data. It may contain devices of different types (disks, CDs) with different characteristics.It may contain devices of different types (disks, CDs) with different characteristics. An efficient and cost effective server design exploits the differences in device characteristics as well as in costs.An efficient and cost effective server design exploits the differences in device characteristics as well as in costs. The design process considers alternative network subsystems that can be used for the transmission of data to the clients.The design process considers alternative network subsystems that can be used for the transmission of data to the clients.

17 Data Server Storage Subsystem Control Server Application Server NetworkSubsystem Data flow Control flow To Clien t Architecture of a simple server Server Architecture Cathy Weisse MJ Parker Tony Denizard Typical architecture: The software processes executing in the processor subsystem are responsible for the management and operation of the server.The software processes executing in the processor subsystem are responsible for the management and operation of the server.

18 Data Server Storage Subsystem Control Server Application Server NetworkSubsystem Data flow Control flow To Clien t Architecture of a simple server Server Architecture Cathy Weisse MJ Parker Tony Denizard Typical architecture: The application server receives application commands from the client.The application server receives application commands from the client. Applications can be quite diverse.Applications can be quite diverse. They may range from:They may range from: interactive applications that retrieve many small multimedia objects.interactive applications that retrieve many small multimedia objects. shopping or medical applications.shopping or medical applications. videoconferencing applications involving many geographically distributed users.videoconferencing applications involving many geographically distributed users.

19 Data Server Storage Subsystem Control Server Application Server NetworkSubsystem Data flow Control flow To Clien t Architecture of a simple server Server Architecture Cathy Weisse MJ Parker Tony Denizard Typical architecture: Generally, there will be one application server per application therefore, application commands rely on application specific server.Generally, there will be one application server per application therefore, application commands rely on application specific server.

20 Data Server Storage Subsystem Control Server Application Server NetworkSubsystem Data flow Control flow To Clien t Architecture of a simple server Server Architecture Cathy Weisse MJ Parker Tony Denizard Typical architecture: Control server has three major functions.Control server has three major functions. Many control decisions that need to be made before the data can flow.Many control decisions that need to be made before the data can flow. Function of the control server is to perform various optimizations that increase overall server efficiency.Function of the control server is to perform various optimizations that increase overall server efficiency. The data server is responsible for the actual retrieval and delivery of the data.The data server is responsible for the actual retrieval and delivery of the data.

21 Data Server Storage Subsystem Control Server Application Server NetworkSubsystem Data flow Control flow To Clien t Architecture of a simple server Server Architecture Cathy Weisse MJ Parker Tony Denizard Typical architecture: Many control decisions that need to be made before the data can flow.Many control decisions that need to be made before the data can flow. For example, sufficient system and network resources need to be reserved for this request to be served.For example, sufficient system and network resources need to be reserved for this request to be served. If there sources are not reserved already for this application instance, or enough resources are not available at present, the current request has to wait. This is referred to as admission control policy.If there sources are not reserved already for this application instance, or enough resources are not available at present, the current request has to wait. This is referred to as admission control policy.

22 Data Server Storage Subsystem Control Server Application Server NetworkSubsystem Data flow Control flow To Clien t Architecture of a simple server Server Architecture Cathy Weisse MJ Parker Tony Denizard Typical architecture: Many control decisions that need to be made before the data can flow.Many control decisions that need to be made before the data can flow. During the process of reserving these resources, it may be necessary to decide which of several network adapters to use for delivering the data to the client.During the process of reserving these resources, it may be necessary to decide which of several network adapters to use for delivering the data to the client. Or it may be necessary to decide whether to deliver the data from cache or disk.Or it may be necessary to decide whether to deliver the data from cache or disk.

23 Data Server Storage Subsystem Control Server Application Server NetworkSubsystem Data flow Control flow To Clien t Architecture of a simple server Server Architecture Cathy Weisse MJ Parker Tony Denizard Typical architecture: Many control decisions that need to be made before the data can flow.Many control decisions that need to be made before the data can flow. Because these control decisions are all interrelated, it is preferable to make them in a unified framework.Because these control decisions are all interrelated, it is preferable to make them in a unified framework. Many of these decisions are actually optimizations that have an important impact on the overall efficiency of the server. For example, before delivering the data from cache, it is necessary to decide which files to cache.Many of these decisions are actually optimizations that have an important impact on the overall efficiency of the server. For example, before delivering the data from cache, it is necessary to decide which files to cache.

24 Data Server Storage Subsystem Control Server Application Server NetworkSubsystem Data flow Control flow To Clien t Architecture of a simple server Server Architecture Cathy Weisse MJ Parker Tony Denizard Typical architecture: Function of the control server is to perform various optimizations that increase overall server efficiency.Function of the control server is to perform various optimizations that increase overall server efficiency. The control server, in more complex configurations, must hide the complexity of the configuration from the application server.The control server, in more complex configurations, must hide the complexity of the configuration from the application server.

25 Data Server Storage Subsystem Control Server Application Server NetworkSubsystem Data flow Control flow To Clien t Architecture of a simple server Server Architecture Cathy Weisse MJ Parker Tony Denizard Typical architecture: Function of the control server is to perform various optimizations that increase overall server efficiency.Function of the control server is to perform various optimizations that increase overall server efficiency. For example, there may be multiple data servers, each with a specific set of files. In this case, after receiving the file server command, the control server picks an appropriate data server. This relieves the application server of the burden of keeping track of the data servers and which data is on which data server.For example, there may be multiple data servers, each with a specific set of files. In this case, after receiving the file server command, the control server picks an appropriate data server. This relieves the application server of the burden of keeping track of the data servers and which data is on which data server.

26 Data Server Storage Subsystem Control Server Application Server NetworkSubsystem Data flow Control flow To Clien t Architecture of a simple server Server Architecture Cathy Weisse MJ Parker Tony Denizard Typical architecture: The data server is responsible for the actual retrieval and delivery of the data.The data server is responsible for the actual retrieval and delivery of the data. These may include delivery bandwidth guarantees as well as bounds on delay.These may include delivery bandwidth guarantees as well as bounds on delay. Providing data delivery while satisfying the Quality of Service (QoS) requirements is perhaps the most important function of the data server.Providing data delivery while satisfying the Quality of Service (QoS) requirements is perhaps the most important function of the data server.

27 Server Architecture Cathy Weisse MJ Parker Tony Denizard Server Capabilities: Can be: Blah Blah Blah

28 Server Architecture Cathy Weisse MJ Parker Tony Denizard Client, network & media server capabilities: For more complex applications that require retrieval, composition, and display of composite or multiple media segments, desired client capabilities may include:For more complex applications that require retrieval, composition, and display of composite or multiple media segments, desired client capabilities may include: supporting complex user interfacessupporting complex user interfaces computing capabilities for dynamic composition of presentationcomputing capabilities for dynamic composition of presentation complex data retrieval protocolscomplex data retrieval protocols attached local storage for dealing with variable bandwidthattached local storage for dealing with variable bandwidth

29 Server Architecture Cathy Weisse MJ Parker Tony Denizard Client, network & media server capabilities: Similarly, the networks need to support:Similarly, the networks need to support: complex data retrieval protocols (dynamic bandwidth allocation)complex data retrieval protocols (dynamic bandwidth allocation) command and data channelscommand and data channels

30 Server Architecture Cathy Weisse MJ Parker Tony Denizard Client, network & media server capabilities: The server capabilities include in response to client requests:The server capabilities include in response to client requests: identification.identification. retrieval of various media segments from a database on time.retrieval of various media segments from a database on time. composition of presentation.composition of presentation. streaming of these media segments via one or multiple retrieval streams.streaming of these media segments via one or multiple retrieval streams.

31 Server Architecture Cathy Weisse MJ Parker Tony Denizard Client, network & media server capabilities: In the real world, the load placed on a multimedia service may be unpredictable. Therefore, from the point of view of an operator of a multimedia service, the server should operate well under varying conditions. The service may serve a large or a relatively small number of users, and the demand for service may be rapidly changing. For a large- scale service, interruptions may be expensive.

32 Server Architecture Cathy Weisse MJ Parker Tony Denizard Storage Device Device Interface Control Processor Storage Device Shows the typical hardware components of a simple server.

33 Server Architecture Cathy Weisse MJ Parker Tony Denizard Basic Server Needs: Cost PerformanceCost Performance Quality of Service (QoS)Quality of Service (QoS) Open interfacesOpen interfaces Storage ManagerStorage Manager Buffers & CachesBuffers & Caches Client SessionClient Session Server Blah Blah Blah

34 Server Architecture Cathy Weisse MJ Parker Tony Denizard Cost Performance: Large scale servers:Large scale servers: small increases in efficiency may lead to large reductions in server costs.small increases in efficiency may lead to large reductions in server costs. For example:For example: caching popular files in memory may reduce disk storage costs.caching popular files in memory may reduce disk storage costs. With network bandwidth being a significant bottleneck, caching and prefetching in the network may be important.With network bandwidth being a significant bottleneck, caching and prefetching in the network may be important. Blah Blah Blah

35 Server Architecture Cathy Weisse MJ Parker Tony Denizard Quality of Service (QoS): Satisfying QoS requirements entails setting policies for efficient scheduling of disks, memory buffers, and other system resources.Satisfying QoS requirements entails setting policies for efficient scheduling of disks, memory buffers, and other system resources. Some applications may require the delivery of multiple data streams, which means the delivery of the various streams must be synchronized.Some applications may require the delivery of multiple data streams, which means the delivery of the various streams must be synchronized. Collaborative applications may require low latency delivery.Collaborative applications may require low latency delivery. Blah Blah Blah

36 Server Architecture Cathy Weisse MJ Parker Tony Denizard Quality of Service (QoS): ScalabilityScalability ReliabilityReliability Dynamic adaptation to workloadDynamic adaptation to workload Blah Blah Blah

37 Server Architecture Cathy Weisse MJ Parker Tony Denizard Quality of Service (QoS): ScalabilityScalability The number of users supported by a server can be small or potentially very large.The number of users supported by a server can be small or potentially very large. The server should be capable of operating efficiently over a large range of numbers of users.The server should be capable of operating efficiently over a large range of numbers of users. Various sophisticated optimization policies are feasible with a large number of users.Various sophisticated optimization policies are feasible with a large number of users. Additionally, the number of users may grow with time. Therefore, the server should allow for easy incremental growth.Additionally, the number of users may grow with time. Therefore, the server should allow for easy incremental growth. Blah Blah Blah

38 Server Architecture Cathy Weisse MJ Parker Tony Denizard Quality of Service (QoS): ReliabilityReliability Failure of the server can lead to large loss of revenue and goodwill.Failure of the server can lead to large loss of revenue and goodwill. By using redundant components as backup, servers can offer very high reliability.By using redundant components as backup, servers can offer very high reliability. Data blocks may be replicated to provide protection against failure.Data blocks may be replicated to provide protection against failure. Blah Blah Blah

39 Server Architecture Cathy Weisse MJ Parker Tony Denizard Quality of Service (QoS): Dynamic adaptation to workloadDynamic adaptation to workload Workload may change unpredictably.Workload may change unpredictably. For example, the actual demand may exceed or undershoot the predicted demand.For example, the actual demand may exceed or undershoot the predicted demand. It may also vary with time and have pronounced peaks and valleys.It may also vary with time and have pronounced peaks and valleys. Policies that allow the server to adapt to varying loads may be required.Policies that allow the server to adapt to varying loads may be required. Blah Blah Blah

40 Server Architecture Cathy Weisse MJ Parker Tony Denizard Open interfaces: The delivery time requirements of applications can vary widely. Hence, applications need interfaces for specifying their particular requirements.The delivery time requirements of applications can vary widely. Hence, applications need interfaces for specifying their particular requirements. A number of characteristics are desirable in interfaces to facilitate portability and networking of applications.A number of characteristics are desirable in interfaces to facilitate portability and networking of applications. Blah Blah Blah

41 Server Architecture Cathy Weisse MJ Parker Tony Denizard Open interfaces: Desirable characteristics are:Desirable characteristics are: To facilitate portability and networking of applications, the interfaces should be open and standard.To facilitate portability and networking of applications, the interfaces should be open and standard. For ease of development, the interfaces should hide details of the structure of the server.For ease of development, the interfaces should hide details of the structure of the server. Blah Blah Blah

42 Server Architecture Cathy Weisse MJ Parker Tony Denizard Open interfaces: Desirable characteristics are:Desirable characteristics are: For ease of development, the interfaces should hide details of the structure of the server.For ease of development, the interfaces should hide details of the structure of the server. For example:For example: The fact that a particular video is replicated and can be played back from multiple servers is not relevant to most applications. It is important for multimedia servers to support common interfaces so that most precomposed applications can be deployed on them.The fact that a particular video is replicated and can be played back from multiple servers is not relevant to most applications. It is important for multimedia servers to support common interfaces so that most precomposed applications can be deployed on them. Blah Blah Blah

43 Server Architecture Cathy Weisse MJ Parker Tony Denizard Server ClientClient Clients I/O Switch Storage Devices Storage Manager: Blah Blah Blah

44 Server Architecture Cathy Weisse MJ Parker Tony Denizard Server ClientClient Clients I/O Switch Storage Devices Storage Manager: Responsible for coordinating and managing the operations of all the storage devices.Responsible for coordinating and managing the operations of all the storage devices. The primary functions of the storage manager are:The primary functions of the storage manager are: Storage of dataStorage of data Retrieval of dataRetrieval of data Recovery from failureRecovery from failure Storage server optimizationStorage server optimization

45 Server Architecture Cathy Weisse MJ Parker Tony Denizard Buffers & Caches: Cache Manager Communication Buffer Free Pool Cache I/O Buffer Buffer Pool Disk Cache Cache Remote Server Local Clients Blah Blah Blah

46 Server Architecture Cathy Weisse MJ Parker Tony Denizard Buffers & Caches: Cache Manager Communication Buffer Free Pool Cache I/O Buffer Buffer Pool Disk Cache Cache Remote Server Local Clients Buffering is used to avoid access delay.Buffering is used to avoid access delay. When the data blocks are prefetched on behalf of the currently consuming data stream, this is regarded as buffering.When the data blocks are prefetched on behalf of the currently consuming data stream, this is regarded as buffering. Blah Blah Blah

47 Server Architecture Cathy Weisse MJ Parker Tony Denizard Buffers & Caches: Caching is used to avoid access overhead and/or delay.Caching is used to avoid access overhead and/or delay. If the data blocks retrieved on behalf of a data stream are retained in the storage for future data streams, even after they are delivered to the current stream, the process is referred to as caching.If the data blocks retrieved on behalf of a data stream are retained in the storage for future data streams, even after they are delivered to the current stream, the process is referred to as caching. Cache Manager Communication Buffer Free Pool Cache I/O Buffer Buffer Pool Disk Cache Cache Remote Server Local Clients Blah Blah Blah

48 Server Architecture Cathy Weisse MJ Parker Tony Denizard Buffers & Caches: Caching objectives:Caching objectives: Increasing server capacityIncreasing server capacity Reducing access latencyReducing access latency Reducing network bandwidthReducing network bandwidth Balancing load across storageBalancing load across storage Supporting data migration in storageSupporting data migration in storage Cache Manager Communication Buffer Free Pool Cache I/O Buffer Buffer Pool Disk Cache Cache Remote Server Local Clients Blah Blah Blah

49 Server Architecture Cathy Weisse MJ Parker Tony Denizard Server Client Client Client Client Clients Client Session: Blah Blah Blah

50 Server Architecture Cathy Weisse MJ Parker Tony Denizard Server Client Client Client Client Clients Client Session: Established by reserving sufficient resources and setting up a logical channel.Established by reserving sufficient resources and setting up a logical channel. Server resources are high, all incoming requests for starting a new session can be satisfied immediately.Server resources are high, all incoming requests for starting a new session can be satisfied immediately. Server resources not available:Server resources not available: the client has to wait to be served.the client has to wait to be served. determines when and which client request will be served.determines when and which client request will be served. ensures a certain fairness across clients to achieve certain client satisfaction objectives.ensures a certain fairness across clients to achieve certain client satisfaction objectives.

51 Server Architecture Cathy Weisse MJ Parker Tony Denizard Summary: Blah Blah Blah

52 Server Architecture Cathy Weisse MJ Parker Tony Denizard Summary: Although there are many types of servers, the basic concepts are built around simple principles.Although there are many types of servers, the basic concepts are built around simple principles. Specific server applications and environmentsSpecific server applications and environments SchedulingScheduling Storage subsystemStorage subsystem Cache managementCache management Blah Blah Blah

53 Server Architecture Cathy Weisse MJ Parker Tony Denizard Summary: Although there are many types of servers, the basic concepts are built around simple principles.Although there are many types of servers, the basic concepts are built around simple principles. Specific server applications and environmentsSpecific server applications and environments Server environmentServer environment Specific server architecture and its componentsSpecific server architecture and its components Blah Blah Blah

54 Server Architecture Cathy Weisse MJ Parker Tony Denizard Summary: Although there are many types of servers, the basic concepts are built around simple principles.Although there are many types of servers, the basic concepts are built around simple principles. SchedulingScheduling Client session schedulingClient session scheduling Client request schedulingClient request scheduling Scheduling in system componentsScheduling in system components Blah Blah Blah

55 Server Architecture Cathy Weisse MJ Parker Tony Denizard Summary: Although there are many types of servers, the basic concepts are built around simple principles.Although there are many types of servers, the basic concepts are built around simple principles. Storage subsystemStorage subsystem Storage managementStorage management Single disk issuesSingle disk issues Multiple disk organizationMultiple disk organization Storage hierarchyStorage hierarchy Blah Blah Blah

56 Server Architecture Cathy Weisse MJ Parker Tony Denizard Summary: Although there are many types of servers, the basic concepts are built around simple principles.Although there are many types of servers, the basic concepts are built around simple principles. Cache managementCache management Buffering and cachingBuffering and caching Memory cachingMemory caching Disk cachingDisk caching Blah Blah Blah

57 Server Architecture Cathy Weisse MJ Parker Tony Denizard Summary: Once the type of server needed has been determined, enhancements can then be added to the basic server architecture to deliver the specific needs of what the server will be designed for.Once the type of server needed has been determined, enhancements can then be added to the basic server architecture to deliver the specific needs of what the server will be designed for. Blah Blah Blah

58 Server Architecture Cathy Weisse MJ Parker Tony Denizard Anthony Denizard Mary Jo Parker Cathy Weisse Blah Blah Blah

59 Server Architecture Cathy Weisse MJ Parker Tony Denizard Bibliography: Dinkar Sitaram, and Asit Dan, Multimedia Servers. Morgan Kaufmann Publishers, 2000Dinkar Sitaram, and Asit Dan, Multimedia Servers. Morgan Kaufmann Publishers, 2000 Feiler, Jesse. Application Servers: Powering the Web-Based Enterprise. Academic Press, New York 2000Feiler, Jesse. Application Servers: Powering the Web-Based Enterprise. Academic Press, New York 2000 Orfali, Robert. Essential Client Server Survival Guide. J.Wiley, New York 1994.Orfali, Robert. Essential Client Server Survival Guide. J.Wiley, New York Held, Gilbert. Server Management. Boca Raton, Florida 2000.Held, Gilbert. Server Management. Boca Raton, Florida Vaskevitch, David. Client/Server Strategies: A Survival Guide for Corporate Reengineers. IDG Books, California 1993Vaskevitch, David. Client/Server Strategies: A Survival Guide for Corporate Reengineers. IDG Books, California 1993 Blah Blah Blah


Download ppt "Server Architecture Cathy Weisse MJ Parker Tony Denizard March 27, 2002 Blah Blah Blah."

Similar presentations


Ads by Google