1 / 59

Server Architecture

Server Architecture. Blah Blah Blah. MJ Parker. Cathy Weisse. Tony Denizard. March 27, 2002. Server Architecture. Blah Blah Blah. Presented By. MJ Parker. Cathy Weisse. Tony Denizard. Blah Blah Blah. Server Architecture. What is a server?. Blah Blah Blah.

asha
Download Presentation

Server Architecture

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


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

  2. Server Architecture Blah Blah Blah Presented By MJ Parker Cathy Weisse Tony Denizard

  3. Blah Blah Blah

  4. Server Architecture What is a server? Blah Blah Blah 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. MJ Parker Cathy Weisse Tony Denizard

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

  6. Server Architecture What is architecture? Blah Blah Blah • 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. MJ Parker Cathy Weisse Tony Denizard

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

  8. Server Architecture Major server components: Blah Blah Blah • Bandwidth • Operating System Software • Administrative interfaces • Capabilities of the clients and/or network • Storage • Processing power • Memory • Cache • I/O speed (busing) • Router (Multi servers) MJ Parker Cathy Weisse Tony Denizard

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

  10. Server Architecture Architectural Requirements: Blah Blah Blah • Large scale specific servers are built using preexistingsystem components such as storage devices, processors, and so on. • A basic server design is modeled from a home PC. • Processor • Storage • I/O devices • Memory • Peripherals MJ Parker Cathy Weisse Tony Denizard

  11. Server Architecture Architectural Requirements: Blah Blah Blah • 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. • Faster singular or 2 or more processors. • Larger storage capacity • Increased memory MJ Parker Cathy Weisse Tony Denizard

  12. Server Architecture Architectural Requirements: Blah Blah Blah • 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 systeminterface), it can be backed up by standard backupprograms. MJ Parker Cathy Weisse Tony Denizard

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

  14. Architecture of a simple server Control Server Data Server To Client Network Subsystem Storage Subsystem Application Server Data flow Control flow Server Architecture Typical architecture: • The storage subsystem stores data. • 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. • The design process considers alternative network subsystems that can be used for the transmission of data to the clients. MJ Parker Cathy Weisse Tony Denizard

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

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

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

  18. Architecture of a simple server Control Server Data Server To Client Network Subsystem Storage Subsystem Application Server Data flow Control flow Server Architecture Typical architecture: • Control server has three major functions. • 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. • The data server is responsible for the actual retrieval and delivery of the data. MJ Parker Cathy Weisse Tony Denizard

  19. Architecture of a simple server Control Server Data Server To Client Network Subsystem Storage Subsystem Application Server Data flow Control flow Server Architecture Typical architecture: • 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. • 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. MJ Parker Cathy Weisse Tony Denizard

  20. Architecture of a simple server Control Server Data Server To Client Network Subsystem Storage Subsystem Application Server Data flow Control flow Server Architecture Typical architecture: • 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. • Or it may be necessary to decide whether to deliver the data from cache or disk. MJ Parker Cathy Weisse Tony Denizard

  21. Architecture of a simple server Control Server Data Server To Client Network Subsystem Storage Subsystem Application Server Data flow Control flow Server Architecture Typical architecture: • 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. • 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. MJ Parker Cathy Weisse Tony Denizard

  22. Architecture of a simple server Control Server Data Server To Client Network Subsystem Storage Subsystem Application Server Data flow Control flow Server Architecture Typical architecture: • 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. MJ Parker Cathy Weisse Tony Denizard

  23. Architecture of a simple server Control Server Data Server To Client Network Subsystem Storage Subsystem Application Server Data flow Control flow Server Architecture Typical architecture: • 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. MJ Parker Cathy Weisse Tony Denizard

  24. Architecture of a simple server Control Server Data Server To Client Network Subsystem Storage Subsystem Application Server Data flow Control flow Server Architecture Typical architecture: • 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. • Providing data delivery while satisfying the Quality of Service (QoS) requirements is perhaps the most important function of the data server. MJ Parker Cathy Weisse Tony Denizard

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

  26. Server Architecture 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: • supporting complex user interfaces • computing capabilities for dynamic composition of presentation • complex data retrieval protocols • attached local storage for dealing with variable bandwidth MJ Parker Cathy Weisse Tony Denizard

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

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

  29. Server Architecture 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. MJ Parker Cathy Weisse Tony Denizard

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

  31. Server Architecture Basic Server Needs: Blah Blah Blah • Cost Performance • Quality of Service (QoS) • Open interfaces • Storage Manager • Buffers & Caches • Client Session Server MJ Parker Cathy Weisse Tony Denizard

  32. Server Architecture Cost Performance: Blah Blah Blah • Large scale servers: • small increases in efficiency may lead to large reductions in server costs. • For example: • 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. MJ Parker Cathy Weisse Tony Denizard

  33. Server Architecture Quality of Service (QoS): Blah Blah Blah • 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. • Collaborative applications may require low latency delivery. MJ Parker Cathy Weisse Tony Denizard

  34. Server Architecture Quality of Service (QoS): Blah Blah Blah • Scalability • Reliability • Dynamic adaptation to workload MJ Parker Cathy Weisse Tony Denizard

  35. Server Architecture Quality of Service (QoS): Blah Blah Blah • Scalability • 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. • 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. MJ Parker Cathy Weisse Tony Denizard

  36. Server Architecture Quality of Service (QoS): Blah Blah Blah • Reliability • 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. • Data blocks may be replicated to provide protection against failure. MJ Parker Cathy Weisse Tony Denizard

  37. Server Architecture Quality of Service (QoS): Blah Blah Blah • Dynamic adaptation to workload • Workload may change unpredictably. • For example, the actual demand may exceed or undershoot the predicted demand. • 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. MJ Parker Cathy Weisse Tony Denizard

  38. Server Architecture Open interfaces: Blah Blah Blah • 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. MJ Parker Cathy Weisse Tony Denizard

  39. Server Architecture Open interfaces: Blah Blah Blah • Desirable characteristics are: • 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. MJ Parker Cathy Weisse Tony Denizard

  40. Server Architecture Open interfaces: Blah Blah Blah • Desirable characteristics are: • For ease of development, the interfaces should hide details of the structure of the server. • 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. MJ Parker Cathy Weisse Tony Denizard

  41. Server Architecture Storage Manager: Blah Blah Blah Client Client I/O Switch Clients Server MJ Parker Storage Devices Cathy Weisse Tony Denizard

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

  43. Cache Manager Cache Free Pool CommunicationBuffer CommunicationBuffer Buffer Pool I/O Buffer Server Architecture Buffers & Caches: Blah Blah Blah Local Clients Remote Server MJ Parker DiskCache Cache Cache Cathy Weisse Tony Denizard

  44. Cache Manager Cache Local Clients Remote Server Free Pool CommunicationBuffer CommunicationBuffer Buffer Pool I/O Buffer DiskCache Cache Cache Server Architecture Buffers & Caches: Blah Blah Blah • 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. MJ Parker Cathy Weisse Tony Denizard

  45. Cache Manager Cache Local Clients Remote Server Free Pool CommunicationBuffer CommunicationBuffer Buffer Pool I/O Buffer DiskCache Cache Cache Server Architecture Buffers & Caches: Blah Blah Blah • 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. MJ Parker Cathy Weisse Tony Denizard

  46. Cache Manager Cache Local Clients Remote Server Free Pool CommunicationBuffer CommunicationBuffer Buffer Pool I/O Buffer DiskCache Cache Cache Server Architecture Buffers & Caches: Blah Blah Blah • Caching objectives: • Increasing server capacity • Reducing access latency • Reducing network bandwidth • Balancing load across storage • Supporting data migration in storage MJ Parker Cathy Weisse Tony Denizard

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

  48. Client Client Clients Server Client Client Server Architecture Client Session: • 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 not available: • the client has to wait to be served. • determines when and which client request will be served. • ensures a certain fairness across clients to achieve certain client satisfaction objectives. MJ Parker Cathy Weisse Tony Denizard

More Related