Font Size: a A A

The Improvement Of Distributed Shared Memory Based On IPv6 Multicast

Posted on:2009-10-05Degree:MasterType:Thesis
Country:ChinaCandidate:Y S DongFull Text:PDF
GTID:2178360242980386Subject:Computer system architecture
Abstract/Summary:PDF Full Text Request
In this thesis, we present the design and implementation of a distributed shared memory (DSM) system. The designing goal of the DSM system is to transplant easily, good usability and high scalability. To transplant easily, the DSM system is implemented upon the LINUX kernel. To get good usability, the DSM system gives a set of user interface functions same as that given by the LINUX shared memory mechanism. To get high scalability, the DSM system uses multi-thread technology, IPv6 multicast technology and absorbs the software pipeline ideas.The basic design aim of this system is that we will build a system which can be easily replanted, operate easily and extended based on the LINUX system. Totally we hope to design a distributed shared memory that provides a communicating method based on shared memory for two processes in different machines, this method is as same as shared memory of two processes in single LINUX system.The purpose of our design is that the programmer can implement IPC in different nodes using traditional IPC of the same point. However we do not care if the communicating process is in the same point, it implements clarity in position and visit.At the same time, we can use the new distributed IPC system to modify the original combined program in single UNIX system; even we do not modify at all and it can carry out in distributed system. Thus we need not program repeatedly in order to transplant the program in single machine to the distributed system, finally simplify the transition from the single to the distributed system.First we present the differences between the DSM system and the message-passing system, the differences between the DSM system and the remote procedure call system, the differences between the DSM system and the closely-coupled multiprocessor system, and point out the advantages of the DSM system such as the good scalability and easy to program compared with the other systems. In this chapter, we also give the main problems which must be solved in designing and implementing the DSM systems and present some basic methods which can be used to solve the problems.Then, we introduced the technology of IPv6 multicast. This article proposes the advantage, the address of IPv6, the principle of Multicast and the main process and the programming method implemented by IPv6 multicast based on Socket protocol with Linux operating system. The Multicast can increase the bandwidth, for only one data package needs to be transmitted in every line of the whole network without the number of the destination addresses. It improves the transferring efficiency of the data, and reduces the possibility congestion of the key network.In addition, we introduced the advantage of DSM based on IPv6 multicast; the traditional DSM system has taken big amount of bandwidth, causing the congestion of network, as well as the efficiency of data transmission. This system uses the IPv6 multicast technology to implement the communication among the nodes, so that only taking this node into consider it can receive the correlated information. It also requests the client terminal with the same data flows to join the exactly same group to share that data stream, which can reduce the usage of the network and enhance correspondence efficiency. Then we design the client interface function and the client interface function is basically the same as the shared memory function in LINUX. We also design the segment structure of the DSM, the system structure, the administrator structure of DSM. The administrator is multi-thread, and different thread deals with the client process task steamily.Then we explain the process of the systematic implementation. In our DSM system, we implemented a set of user interface functions, the syntax and the semantics of the functions are the same as which of the user interface functions in LINUX shared memory mechanism. It is very easy to use these functions for the user who well knows the LINUX shared memory mechanism. In the process of the implementation, we do some careful designing works for the message types and message functions to ensure that the most messages among different nodes are multicast messages, only very little messages are point-to-point messages. By the advantages of the multicast communications, we can greatly decrease the number of messages passing through the network. In this part, we show the design details of the message types and the message functions, and also give the implementation details of the user interface functions and the DSM manager.Finally, we design various threads in details for the managers of the DSM, including the creation for the memory thread, the connection for the sharing memory section thread and the process for lock and unlock. We also analysis the system and illustrate the consistent protocol the system uses, the algorithm the system implements, the problems for design and implementation we needs to solve, the main way for improving the system, as well as the design of the experiment and the analysis of the results.The multicast technology can reduce the transmission numbers of the message in Internet, so it make the amount of messages of every node receives and disposes irrespective to the amount of the system, and it only has connected with the amount of producing processes of every point. On the other hand, the multithread programming can reduce update and delay of multi-copy data, make it equal with the single.In the single administrator, once there is a request, the whole administrator will serve for the quest; other request will be delayed until the request can be finished by the service. In multi-process administrators, the CPU pays out very large expense, the administrator processes can not easily share the information. Using the multi-thread administrators, multi-threads each other can share the data very easily.In this chapter, the major jobs are to analyze the consistent protocols in our DSM system, the implementation algorithms in our DSM system, and the methods to solve the main problems related to our DSM system design and implementation, we also analyze how these factors affect the whole system performance. Finally, we point out the technologies to improve the whole system performance which we adopted, these technologies are: the IPv6 multicast technology, the variable lock range technology, the static distributed management technology, the delayed write-update policy, the multithread programming and the software pipeline technology.
Keywords/Search Tags:Improvement
PDF Full Text Request
Related items