Split protocols in bare machine computing

Author/Creator

Author/Creator ORCID

Date

2013-03-05

Department

Towson University. Department of Computer and Information Sciences

Program

Citation of Original Publication

Rights

Copyright protected, all rights reserved.
There are no restrictions on access to this document. An internet release form signed by the author to display this document online is on file with Towson University Special Collections and Archives.

Subjects

Abstract

This thesis extends on-going Bare Machine Computing (BMC) research at Towson University. BMC applications run on a bare machine without any commercial operating system, kernel, or other centralized support. This research consists of splitting protocols and their impact on performance, its applicability to servers and clients, ability to construct scalable mini or large server clusters. The split protocol principle discovered in this dissertation laid a basic foundation for protocol splitting and demonstrated unexpected performance improvements in constructing split protocol based servers. This dissertation will also serve as a cornerstone for future split protocol architectures, design and implementation for all OS based systems. The split protocols found and investigated in this thesis fall into two main categories. First, a protocol may be split based on a connection and data interactions. One server handles connection establishment and closing and the other handles data for each transaction. Both servers stay online until a given request is complete. A given client does not see such splitting during its transactions. We refer to this approach as a server level split protocol. Second, a protocol may be split such that a connection server will provide connection establishment and a data server will provide data and termination of the connection. In this case, the client is fully aware of connection and data servers. This approach is referred to as a split protocol at client server architecture level. The later technique modifies the existing client server protocol and makes the client aware of splitting protocols. Both of these approaches have pros and cons of their usage. This thesis investigates these two approaches in detail and derives numerous key impacts of protocol splitting. The two approaches outlined above are demonstrated using a bare PC implementation that is conformed to a Bare Machine Computing paradigm invented by Dr. Karne at Towson University. Numerous performance measurements are conducted during the research and it was found that two split servers perform about 25% more than a conventional two independent servers. This is the most surprising result found in this research, where such dramatic improvements in performance in Web servers were never discovered before. In addition, this work demonstrated an efficient way to construct mini clusters ranging up to 4 servers and large clusters ranging up to 16 servers. This dissertation work will also serve as a cornerstone for building scalable server clusters based on split protocol discovery. The Split Protocol concept explored hear will provide a generic idea to split transactions in general to achieve higher performance in distributed servers on the network. Numerous applications such as file servers, database servers and webmail servers may benefit from Split Protocol concept. Finally, the split protocol architecture may also result in more reliable server clusters due to its redundant nature of dual servers having complete state of each request in processing.