90 likes | 173 Vues
Prototype Design of an Evolutionary Trustworthy Web Server Hons Project Fall 2003. Assumptions. Use off-the-shelf client software Use .Net framework .Net framework cannot be modified Not use off-the-shelf web server, e.g. MS IIS (Internet Information Service)
E N D
Prototype Design of an Evolutionary Trustworthy Web Server Hons Project Fall 2003
Assumptions • Use off-the-shelf client software • Use .Net framework • .Net framework cannot be modified • Not use off-the-shelf web server, e.g. MS IIS (Internet Information Service) • We will write a simple server software • We will write simple service agents
Implementation Overview Clients off-the-shelf Web Server Service Provider Agents Service Agents Service Scheduler C# Multithreading in .Net Framework
Service Scheduler requests from Service Provider Distributor QS1 QS2 QS2 QS3 Priority queues Service Scheduler Dispatcher (service activator) .Net Runtime S1 S3 S2 S4
What Can Be Scheduled • Service Scheduling • Which service agent should be activated? • Will be implemented in the prototype • Task Scheduling • Which process (all tasks and agents in the system) should be executed? • Should be implemented in the infrastructure (OS) • Will not be implemented in the prototype
Implementation Consideration • Each task, agent, or object is a C# thread • Threads are organized in a hierarchy • The main() will activate two threads: • Service Provider, which will activate: • service agents • Scheduler, which will activate • distributor • priority queue agents • dispatcher, which will activate the selected service agent
Dispatch Policies • Select the most critical service first; • Dispatch the request with the highest priority; • Each service agent will start a quantum timer at the beginning. When timeout, the current process is saved, put back into its queue, and another request is dispatched
Task Allocation • Vishnu: • Write graphic user interface • Generate clients and service requests • Write simple service provider • Explore wireless communication option • Foad • Write Service Provider Agents. These agents • take registration request from clients, opens and manages user accounts • generate password • take service requests, verifies user id and password • handle statement requests • Yinhui • Write the service scheduler. It • takes approved requests from service provider; • put different service requests into different queues • select a request from the queues and call the service provider to handle the request.
Time Table from 10/07/2003 2 weeks complete the preparation of C# multithreading programming and read the sample programs from last semester. 2 weeks Each has the main program done, in which you have created multiple threads, each thread will do one job. Three of you have decided the interface among you. 2 weeks You have the threads implemented and individually tested. Remaining time (about 2 weeks): test the system together.