Turst Devloping Agent (TAD)

Abstract

The aim of this project is to research and develop a trust agent which will assure good interaction between computing nodes in a virtual organization environment of the grid. In this context, characteristics identified in this project are as follows. Firstly, such open source environment has so many computing nodes connected with each other virtually and they can connect and disconnect with each other any time. Furthermore there is a possibility that some computing nodes might be malicious. Secondly, the openness and dynamism of these environments mean that anyone can join or get connected to node which one is not connected previously. Thirdly, these systems which make VO are in remote locations and distributed so to develop a model for such systems is very tough task. Specifically, this type of model should be centralized by which trust can be managed easily. Lastly, such trust agents is required because systems connected to a VO can be part of other VOs as well so it is hard to locate such systems that are malicious. Now, VOs are like a social society of computing systems which are connected to each other for a specific task or requirement. So behavior of those systems among each other influences the reputation and trustworthiness of whole VO. For this reason it is important to maintain trust among computing nodes.

Against this background, this project is delivering TAD (Trust agent Design) which focuses, in particular, on providing a calculation of trust for a computing node in interaction with another node. This measure of trust is calculated by taking the past experiences into account and when there is no personal experience trust is calculated from the experience of other nodes. This information will be provided by registry stored in TAD.

Introduction

 

Computing as a field came a long way since the invention of ABCUS. Form First Calculator to today’s PDAs and Black Berry. They are getting smaller and faster day by day. This evolution has really taken a rocket boost by invention of networking and internet. Resource sharing word has changed every technology since it was introduced. After developing a super computer there was a need for something simpler yet effective and cost efficient. Grid Computing was the answer of this question. Science its existence and to till date it has grown massively. Furthermore an example “Hundreds of researchers took part in sequencing the human genome, and each of the giant detectors now being built for the Large Hadron Collider (LHC) at the CERN particle physics lab near Geneva, Switzerland, is designed and operated by teams of more than 1000 physicists and engineers.”[i]. This was only possible because of grid computing and it is huge resource sharing abilities. This document is based upon presenting a model of intelligent agent software that calculates trust of a resource sharing node operating in a large open distributed system the Grid. GRID computing has emerged as a new field that is different from distributed computing. Grid computing focuses on resource sharing in which large data-stores, high speed networking and applications are used over the internet works with groups who are working at remote locations in virtual organizations. This chapter introduces trust and also explains its significance to computing. There are different sections that introduce every aspect of this thesis.

1.1       The Meaning of Trust

In our day to day transactions we always tend to rely on other person’s actions for a task. It can be any work regarding human life. And there is also a limitation of human nature that any future action could not be predicted and thus we have to rely on others. To tackle this limitation is what we do in everyday life. Also, we may choose not to disclose information to someone if we believe they will use that information to our disadvantage. To say that user trust on someone that person becomes trustworthy but if that person does not perform his task well he loses his trustworthiness. Trust is included in every aspect of our life. According to the famous description of trust “Trust is the currency of all comers”.[ii] That means that with trust user can be successful in any field of life. Trust is widespread in society and we use it in many different contexts. “Trust is a particular level of the subjective probability with which an agent will perform a particular action, both before she can monitor such action, and in a context in which it affects her own action.”[iii]

According to this definition trust depends on particular action which will happen in future. So an action which will happen in future and such action will also affect individual’s future action. This means that trust is an important part of decision making. This means that an individual will take a decision to lean upon another individual to do the work. The trust creates belief among individuals for each others actions. This also provides with an important factor which is creating belief among individuals which helps to create a strong and reliable community. In short Trust is a pillar to build a safe and productive society. Trust also plays an important part in bonding relationships that lead to good future relations. Trust is an important factor for present and future actions, without it there is no fully committed social or working environment. Here are some reasons why trust is important in life.

  1. Because without trust individual will not be able to have confidence in sharing work or tasks with another individual.
  2. The trust is important because relationship not be formed or maintained without trust.
  3. It is a beginning and end of a relationship between individuals or organizations.
  4. To continue relationship maintains of trust is necessary.
  5. It is hard to gain trust and easy to lose trust.

Top of Form

“Some social theorists claim that trust is required to produce cooperation on a large scale in order to make societies function productively.” [iv]  Trust is also important for achievement of goals or aims. If individual doses don’t trust his own skills and capabilities then he cannot achieve his goals. In any organization trust among team members is also important which can result in better quality of output. Thus we can say that trust plays an important role in decision making for an individual in a social and professional environment.

1.2         Trusts and Computing

Trust is emerging as an important factor in social as business environments. In both of these technologies has an important role to play. Technology is important factor life because an individual share most activates of their life with new technology. Computers are very largely involved in business and personal life. This was due to the development of distributed networking which is called internet. The internet is everywhere now from home Desktop PC, Laptops to mobiles and PADS. Trust is a major concern in such environment because there is not face to face interaction between individuals. On computing trust is based on different elements such as authentication, execution, coding, time. In real life Trust is based upon reputation and face to face nitration between people. But when medium of communication changes risk increases. The Grid also can be included in such environments where risk is there because of lack of reputation management and trust management.  Trust engages with issues like security, service and other elements. Security in computational environment is regarded with what an individual or software can do with a computer system. Trust on that person or software which is using a system is necessary in the context of data protection and policy maintenance.  Services provided trough computer a system is also requires trust in terms of relationships between computers or individuals. Trust has emerged as a platform to build social networks in a distributed computing environment.

1.3       Motivation

It is clear from the preceding section that trust affects a number of different areas in computing. The view of ‘The Grid’ where all systems are connected to one network is a possible only if trust among computing node establish and maintained. The grid is based on VO (Virtual Organization), which is created by distributing organizations, which shares a command area or goal, due to this Grid will have each and every application for every industry. Such wide span of applications or technology which has been used as a base of distributed systems. Web Service is one of the cornerstone which is destined to play an important role for The Grid. WS is an important aspect of the Web and VO (virtual organization) currently as it is so commonly used everywhere. Regarding this application area trust is a major concern area because existing approaches to security within distributed systems are stretched by the extreme conditions imposed by the Grid, and significant effort has been undertaken in, for example, Globus to provide support for secure use of resources. In the context of Grid and Agent, this is to explain that Agents in a Grid environment play an important role. By connecting to correct machine or database to retrieve results from a remote computer Agent works autonomously. In this kind of situation user should have full trust on Grid and Agent software to get the job done accurately and quickly. The grid is based on VO (virtual Organisational) platform where a VO is a place where different people or organizations have common interest or Common problem. We can say that VO is formed on basis of social and professional trust but the difference being a virtual and computational platform. An agent plays an important role establishing this trust among users and providers. An agent’s work is limited to provide connection and to retrieve information. It becomes difficult to maintain trust trough agents. In a grid environment there are two types of resources available Hard and Soft. Hard resources are devices which are remotely accessed by remote users and Soft resources are Database and software. Based upon a wide range of resources it is important to maintain trust among providers and users. View of “The Grid” will only be possible when there is a good and effective Trust Calculation Management System in Grid.

Due to such limitation and QOS of VO this thesis is aiming to solve this issue by giving a well researched and developed TAD (Trust Agent Design).

1.4       Aims & objective

Firstly main aim of this project is to design and develop a slandered trust agent model for Grid which can calculate trust among computing nodes. Secondly research of Agent Models is based upon literature review. Further more compare trust models for Agent software from different papers. Thirdly develop TAD (Trust Agent Design) literature review based. Develop TAD with the open platform resource. Test TAD functionality over small scale network.

Literature Review

 

Since this chapter main aim is to describe background, problem and current relevant work by discussing different journals and papers. Section 2.1 describes in detail what is Grid computing. Section 2.2 describes trust in general, in Grid environment and in multi agent systems. Section 2.3 is summery of related work and pointing out the key issues. Last section 2.4 concludes the section’s discussion.

2.1       Grid computing

“Grid computing is a computing network of tools and protocols for coordinated resource sharing and problem solving among VOs (Virtual Organisations).”[i]

To under stand grid computing one needs to understand SOA (Service Oriented Architecture). Described in ‘Understanding SOA with Web services’ explains very simply that, “SOA is a method to develop a system bases on service. Service-orientation aims at a loose coupling of services with operating systems, programming languages and other technologies that underlie applications”.[ii] We can say that in grid computing SOA architecture is implemented in Web Services.

Service Oriented Architecture of a Web Service

Architecture of a Web Service

In grid computing there is the same structure of SOA. But as described in definition given above, grid is resource sharing with help of networking and protocols over internet and under VO. Grid computing is using common interface specification to support interoperability of discrete. Grid also included an independently developed service which was not possible a few years back. To just to take a glimpse into the future we should put together four laws of computing Moore’s Law, Gilder’s law, Metcalfe’s law and Disk law. The next few years will bring a vast change in computer networking, storage space and processing power. That will affect Grid computing as well we are still have many years to get to The Grid concept.

Grid technology is a new and emerging technology in today’s fast computing and tera bite storage area. To Understand Grid in one sentence it would be the “computing and data management infrastructure that provides the electronic foundation for a global society in business, government, research, science and entertainment.”[i] As shown in figure 1 we can use the computation power of supercomputers and cluster, data storage of storage device on computers in network and over the internet, share navigation system and research information from satellites and contribute in on going research over the internet by using Grid middleware form user’s mobiles, workstations and etc. Users who want to access a grid and its resources they will have to be members of a virtual organization. This virtual organization is administrated by people who authorized and include members and resources. Grid also has one logon that means that one person only have to log on once not like while surfing on the internet to go to different site one has to have a different login details. Grid computing dose doesn’t need specific configurations of hardware it can use another device to get require speed and memory. This grid is a flexible and fast growing technology.

the grid metaphor

The grid metaphor

2.2     Trust & Grid:

 “Trust is the foundation of both human society and cyberspace security. Trust is not a black and white substance. Frequently gray area exists in conveying the trustworthiness of a computer site.”[i] Similar to human relationship, trust is expressed by a linguistics term rather numerically. Trust differs with respect to time and environment. The concept of trust is a subject related to a belief in nodes for some reliability. “The definition of trust proposed by Farag Azzedin and Muthucumaru Maheswaran is as follows: Trust is the firm belief in the competence of an entity to act as expected such that this firm belief is not a fixed value associated with the entity but rather it is subject to the entity’s behavior and applies only within a specific context at a given time.” [ii] The firm belief is a value which changes by other values from trustworthy to untrustworthy. The trust is built on the basis of past experiences and recommended trust by a third party. The trust is also based on time because the trust level between two parties is not necessarily the same.

An agent who works on VO, in such environment there are so many nodes and service providers and service consumers. It is difficult to keep track of trust among a big number of nodes because the nature of VO. A trust agent is divided according to area and user every part is calculated differently and then all results will be submitted to one agent.

ST (Service Trust): This trust is for the service provider side that is providing services to VO and consumers. When connecting to VO for a specific service consumer should have trust on service which is provided by the service provider. This is also considered as soft trust. To calculate ST user needs to look at Service quality, output speed, user satisfaction. First two instances can be taken for calculation but last one user can only get from user feedback. For example star rating or good, average and bad rating system.


[[i]] Shanshan Song and Kai Hwang, Dynamic Grid Security with Trust Integration and Optimized Resource Allocation, Internet and Grid Computing Laboratory, University of Southern California, Los Angeles, CA. 90089 USA.

[[ii]] Farag Azzedin, Muthucumaru Maheswaran, “Towards Trust-Aware Resource Management in Grid Computing Systems,” ccgrid, p. 452, 2nd IEEE/ACM International Symposium on Cluster Computing and the Grid (CCGRID’02), 2002.

,  performance rating systeStar rating system,  performance rating systemm

Star rating system, performance rating system

  1. ET (Equipment trust):  Equipment trust: In VO there is also Hardware resource provider who provides service for hardware use. This trust is calculated on basis of consumer satisfaction and processing time speed and quality of output. For example trust of a computer is calculated using processing power, Disk space, Job execution speed and Network speed.
  2. IT (Information Trust): This is most important trust among other types of trust in the grid computing grid is sharing information over the internet now data user is looking for should be accurate and relative.
  3. BT (Broker’s Trust): This trust concerns a broker who sells services over the Grid. This measure belief that a resource broker has discovered trustworthy recourse. This trust will be an individual trust that will include reputation of a broker and reputation of services provided by him.
  4. UT (User’s Trust): This trust is measured on user’s side where the trust will be calculated on whatever service is provided from provider. This trust is calculated on user experience and reputation based trust.

Trust agent includes all types of trust in calculating trust in grid environment. Every trust model also requires a trust management structure. Trust should be managed well because over the period of time trust can covert in to mistrust. The trust management structure should be flexible in a way that with minimum efforts trust can be maintained efficiently.

 

2.3       VO Grid Provider Viewpoint

A service provider in grid no user or node can misuse his service or data. Further more it is meter of reputation for him when he is not able to perform his task because of some reason. Because of this there is a need of software that can evaluate every process, data and nodes as well. No matter what happens service provider should provide service with the same quality and at the same pace. Legal and economic factors may be relevant too. Intrusion detection is an important area of responsibility, particularly so in Grid where anyone can gain access to data and services whether he is authorized or unauthorized he just have to be a member of a VO. There are so many services like policing, account practices and etc. Which provide security for provider side. Trust or mistrust of a VO at an organizational, departmental and Workgroup level may well influence whether or not a VO is suitable as a Grid partner. Furthermore, a VO is clearly embedded within a society and culture. A provider needs to consider how their virtual identity may be verified, and trusted by potential consumers of Grid services. In particular, managing user expectations and soft requirements poorly can lead to consumer frustration and indeed even result in frustration and a degree of mistrust.

2.4       VO Grid Consumer Viewpoint

                        In Grid only one sign in authentication is needed for a Grid consumer which will provide us access to multiple resources which are there on the grid. Furthermore, a Grid service consumer needs to be assured that the reputation of the provider is adequate so that the risk of failure or interruption of a service is minimized. Clearly, adequate support for delegation is required i.e. A program initiated on a consumer’s behalf may need the ability to itself delegate (trust) a task to another program, located somewhere on the Grid. The consumer needs to be assured that only authorized parties can gain access to sensitive data and that adequate guarantees are in place with respect to a large number of related Quality of service issues if they are to invest their trust in a Grid service provider.

2.5       Trusts and the Grid: So what is missing?

There is considerable evidence to support the view that human trust formation is a far more elusive and subtle process than implied by existing models and initiatives or trust architectures such as WS-Trust. For example, wider organizational and cultural factors influence human trust formation, not merely local contextual cues. In particular, human trust formation involves wider trust contexts: organizational, social, and human cultural factors pre-determine human trust formation and expectations and beliefs [13]. Furthermore, human trust is also ultimately not merely a rational cognitive constructs but has a strong emotional component. For this reason we propose that the current models and approaches to the autonomic trust formation within the emergent Grid computing paradigm should seek to endow agents and entities with these wider more subtle “soft” contexts, hence seek to more closely mimic human to human trust formation. If this can be achieved there will be increased level of trust and security and lessen risk in relation to certain kinds of collaborative Grid enables projects.

We go on later to articulate our ideas at greater length and propose ways in which both the semiotic paradigm and semiotic approaches may help us construct more human-like models of trust that encompass both ‘hard’ and ‘soft’ trust issues: that is to say trust tangibles, credentials and technical mediators of various kinds as well as trust intangibles. At present the emphasis on evolving a secure environment within which Grid services can be invoked merely an agent to agent and agent to an entity based approaches using by referencing mainly local virtual credentials of various kinds seems to have taken precedence over a consideration of wider virtual organizational trust issues. That is to say that merely enabling a set of tangible security technological mediators will be a necessary and sufficient condition to invoke ‘trusted’ Grid services. Within OGSA for example, there is perhaps a degree of over-reliance on the established WS-Trust framework to handle trust aspects. In fact, despite its name, most of WS-Trust relates to tangible security aspects, and little to wider VO reputation, Quality of service, digital brand identities, or wider indeed wider organizational reputation concerns.

2.6       Related work:

2.6.1   International Grid Trust Federation        

International Grid Trust Federation IGTS is the trust governing and guidelines providing body. The IGTF constituency consists of our three member MAs: the APGridPMA covering Asia and the Pacific, the EUGridPMA covering Europe, the Middle East and Africa, and The Americas Grid PMA covers Latin America, the Carribean and North America. These include identity providers, CAs, and their major Relying Parties, such as the international Grid Deployment and Infrastructure projects

  1. Classic X.509 CAs with secured infrastructure
  2. Short Lived Credential Services X.509 Public Key Certification Authorities
  3. Member Integrated X.509 PKI Credential Services (MICS)

By reviewing various documentation published by this organization, one thing can be concluded that their approach towards trust issues of Grid is not more focused. This is due to the fact that a lot of research is being done on security standards.

2.6.2 Other contributions:

“Farag Azzedin and Muthucumaru Maheswaran proposed a formal definition of both trust and reputation and discussed a model for incorporating trust into Grid systems.” [i]

“Rajkumar Buyya and Srikumar Venugopal proposed an overview of an open source Grid toolkit, called Gridbus, whose architecture is fundamentally driven by the requirements of Grid economy.” [ii] Gridbus technologies provide services for both computational and data grids that power the emerging eScience and eBusiness applications.

“Ernesto Damiani et al. Proposed a self-regulating system for P2P network using robust reputation mechanism. In their system reputation sharing is realized through distributed polling algorithm.” [iii]

“Chuang Liu et al. Proposed a general-purpose resource selection framework by defining a resource selection service for locating Grid resources that match application requirements and evaluated them based on the specified performance model and mapping strategies, and returned a suitable collection of resources, if any are available.” [iv]

“Yao Wang and Julita Vassileva proposed a Bayesian network-based trust model and a method for building a reputation based on recommendations in peer-to-peer networks.” [v]

“Sepandar D. Kamvar et al. Proposed a reputation management system, called EigenTrust, which can effectively reduce the number of downloads of inauthentic files in a P2P system. The reputation value of each pair is determined by the number of successful downloads and the “opinions” of other peers.” [vi]

“Shanshan Song and Kai Hwang proposed a new fuzzy-logic trust model for securing Grid computing across multiple resource sites. They have developed a new Grid security scheme, called SARA.” [vii]

2.7    Comparing existing Trust Models:

2.7.1 Model1:

This model was developed by a group of students from Macquarie University, Aus. This model is based on node behavior in the Grid. How a node acts in Grid are classified into four categories (Table 1). A set of quality is denoted in this model as Q = {G, N, B, M}. This classification is sufficient for normal Grid applications. “This model maps behavior quilts into a feedback score, also shown in (Table 1)”.[viii]

Service rating Provider Side Consumer Side Score
Good Excellent Service Quality Quality code, Fast execution, 2
Normal Normal Quality,Service  as expected Normal Execution, Normal Code and usage 1
Bad Service Return with delay Slow code, high usage -1
Malicious Temper with the Code, does not execute code Harmful Code, unauthorized instruction Not allowed

[Table-1 – Service Rating table for TAD][ix]

 

2.7.2 Model 2:

CA research paper form Macquarie University, North Ryde, Australia discusses a trust model which is for a general grid computing system. In this paper Trust model is being described as (E, R, OP) where the E= number of members in the grid, R=set of trust relationship between members of the grid and OP= operations for the management of such relationship. Furthermore this paper describes Trust relation ships as different types of trust such as authentication trust, execution trust, could trust, direct trust, recommended trust etc.

2.7.3 Model 3:

TRAVOS is part of the CONOISE-G project, it is funded by the DTI and EPSRC through the Welsh e-Science Centre, in collaboration with the Office of the Chief Technologist of BT. TRAVOS stands for Trust and Reputation System  for Agent Based Virtual Organisations. This is a trust model for VO trust management. In the preceding sections, we show how, by using the framework, reputation information can be used along with a trustee’s direct experience to assess the trustworthiness of an agent. However, apart from assessment, there are two other issues that a practical trust and reputation system should include:

(1) Agents require some mechanism to obtain opinions from reputable sources.

(2) Agents must decide when it is necessary to obtain reputation information.

The latter is important, because if a trustee has sufficient direct evidence with which to judge a trustee, the cost of obtaining reputation information may outweigh its benefits. We now consider each of these issues in turn.

Reputation Brokering system

Reputation Brokering system

2.7.4 Comparison:

Further on previously discussed in this chapter, trust models which calculate trust on bases of relationships and behavior of the node in a grid environment. As we know that Grid is collection of distributed resources which shares services among each other. While calculating trust for such node the best model to refer to as is model 1. Furthermore this model concentrates on the basic elements like computing power, memory storage and software quality. Still their approach towards this trust model seems right till some extent. This is because they explained that form the model that they have created trust will be calculated on the bases of feedback. At this point model 3 comes into consideration they have descried calculations trust by automated software called Agents. This is the area where the model 1 requires a bit more research into how to calculate trust by automated trust Agent software. Out of these three models of trust for grid. Mode1 and model 2 has a good approach but still requires some research on problem area.

Trust Model for Grid

This chapter is focused on Developing TAD (Trust Agent Design) by reviewing different models and giving arguments to support TAD. This development is perused with literature provided by the project supervisor, University LRC and Internet. TAD design is derived on three elements sterilized, scalable and flexible.

3.1    Types of Trust:

The main objective of this chapter is to describe a trust Management model for computing node over grid environment. In previous chapters a basic idea of the grid and trust has been discussed. To create a trust model for grid networking nodes, areas to be concentrated are direct trust, recommended trust and indirect trust. Figure-5 describes how different types of trust are formed between nodes in a network.

3.1.1    Direct Trust

Direct trust is obtained when nodes are aware of each others physical location this trust can be obtained when two nodes are in the same room and it also can be obtained if two different nodes which are located at remote location but they have a long relationship.

3.1.2    Indirect Trust

In open and dynamic environment where nodes are unknown to each other only indirect trust will be obtained. This type of trust is only obtained in connection with each other for a short period of time

3.1.3    Recommended Trust:

Recommended trust is established when there are two modes which have no experience of each other and still they are connected and because they were recommended by other nodes in same VO.

3.2    Trust calculation:

Firstly to calculate trust there should be a clear understanding of the role a PC in a VO. To calculate any trust one should understand on what bases of trust are calculated. Calculation of any type of trust can be done on the bases of the below given 10 elements. Although for computing node it may differ but basics stays the same.

1. Availability 6. Integrity
2. Competence 7. Loyalty
3. Consistency  8. Openness
4. Discreetness 9. Promise-fulfillment
5. Fairness 10. Receptivity

[Table-2, Butler’s (1991) ‘Conditions of Trust Inventory’][i]

Taking this table into consideration we can apply the same elements while calculation trust but it should be relative with grid computing. On the whole a computation trust is calculated from such elements that affect service quality at both end users and providers. Figure-6 explains those elements that can be used to calculate trust.

Computation Trust Model

Computation Trust Model

“Grid computing provides a mechanism for users to discover, select and utilize remote resources.” 21. Processing power, processing cost, processing architecture, memory and network characteristics are factors which can be included while evaluating trust for computers. Grid resources are remotely located and have the huge memory storage capacity due to this reason all characteristics shown above are perfect to calculate trust among PC of Grid VO. In grid computing a node can act as one is a service provider and second is the consumer. Trust calculation processes is an ongoing process and depends on the outcome of a process. Trust is degree of belief in the resource provider’s ability to complete the user’s task dependably, securely and reliably. But one of the main questions is how to assess the accuracy and reputation of the source. Assessment of such elements can be done by evaluating results or by user interaction. Agents are autonomous software they don’t require any user interaction so for this project evaluating results will be a good way of calculating trust.

3.3    Evaluating results:

Results can be evaluated only if the user has the expected output stored this can only be done if the user knows what is expected out of a particular node then users can evaluate the results. It is like having a specific machine having a specific task to do. This only can be put into implementation when the user has a structured approach towards systems’ ability and what role it has to perform. In a grid environment Computing nodes are used in various roles such as data storage device, multimedia computing device, simple.  A grid computer connected with multiple number of the same computers clustered together. Often the connecting technology is called clustering. Internally a grid computer is connected for sharing other devices such as mass storage and mass memory. Based on classification of computers a results evaluation system can be put in place to calculate trust.

3.3.1    Mass Data storage Devices:

For such devices which are used in grid for Mass memory storage devices can be monitored by trust agent software where it will evaluate a task result. The basically storage device is used for data storage when users store their data some where they wanted to be protected from any possible threats. There are two types of transactions happening in grid with such devices upload and download. Upload is where user backup data and download where users store data. So in both situations to record and compare input and output data amount and content will decide if that provider or consumer is trustworthy or not.

3.3.2    Mass Memory Processing Devices:

Mass memory processing Devices are used for process huge task form remote location. This sort of task should be monitored in terms of security and QOS. Processing devices are such that user can not build up trust on evaluating results because the input of data and output are both different. In some processes user can have an expected result but in some type of process user is not expected results.  For examples processes like calculation and simulation user can know what is the expected output but processes like research and analysis do not have expected output. To calculate trust of such nodes agent will have to keep records of processing speed and processing output. Also an agent will have to look at repetitions of jobs.

In above sections two types of devices are explained. To calculated overall trust for distributed networking node elements like processing time results and volume of jobs should be taken into consideration. In any transaction there are two parties one is giver second is receivers so the trust will also be maintained on both sides. In the context of grid two parties will be service provider trust and second is consumer trust. To get a formula of calculating both sides trust we will assume Provider trust port and consumer trust CT.

To calculate exact trust first role of a node should be decided so it will have to go through the identification process. After this process is done computing node will be given a trust value on the bases of their configuration. After on the bases of their transaction and their behavior they will be evaluated with the process.

 

 

3.4    PT and CT calculation:

As mentioned in above section provider is who gives service to the consumer, for an agent to evaluate such node will require to monitor the number of consumers, the number of job input, and the number of output. Let us assume that number of consumers = Cn, number of job= Jn, number of jobs out= Jo. Jn and Jo will give user successes or failed jobs. On the bases of these arguments this formula can calculate failure rate or success rate for a PC.

For examples, in one given time slot there are 15 consumers trying to submit Jn number of Jobs and provider will give the Jo number of output job. Depending on the failure rate user can give trust value PT

Afr = Average Failure Rate

Jn = 15, Jo=10

Afr = Jn-Jo/consumers;

Afr = 15-10/15

Afr = 5/15

Afr = 0.33;

Based on this programming code trust will be updated every hour. If there is no job then there will be no action. But if there is any number of job in 1 hour it will calculate error rate and after that evaluation it will keep updating every hour. This will be connected with a database that holds values of multiple nodes and trust value will be stored in a separate data base no based on that database value of each and every node will be converted to graphs and by graphical representation user will be able to see every pc performance rating in one chart and comparing with past chart they can get an average machine that performs x number of job successfully will have the highest trust rating.

The only restriction being in this formula a consumer will be able to submit only one job on time. Furthermore form Afr user can either give or minus trust value from an existing Trust value holed by a P.

For (i=0;i<=23;i++)

{

If (Afr>=0 && Afr<=50)

{

Pt=Pt++;

Ct=Ct++;

}

Else

{

Pt=Pt–;

Ct=Ct–;

}   }

3.5    Trust Management Process:

Based upon discussion given above a node’s trust will be calculated following below given steps. This Trust management diagram is based upon the figure of the trust management system [I] shown in below figure-7. In this process the trust component is monitoring only two stages. Further more to this model require a centralised approach towards management. A centralized model keeps track of every on going stage process of managing trust.

Components of Grid trust management

Components of Grid trust management

TAD Trust Management system

TAD Trust Management system

Shown in figure 8 TAD trust management system model is divided into five parts based on process of trust. Starting with the Trust metric identification this process will identify which trust is suitable for an instance. In this stage classification of trust occurs and this process is important because a slight misclassification leads to future mistrust. Second stage is Trust Metric Evaluation where the trust will be applied with suitable methodology that determines the value of trust which classifies trust as form fully trustworthy to untrustworthy. This status is temporary because trust will change in further stages on reputation and behavior. A third stage is a trust value calculation in which a value of trust will be fixed depending up on metric found in an instance. This value is distrusted equally among all the resource providers. In forth stage updating of trust value is processed based on their work and reviews by consumers. Trust value can be updated periodically and depending upon actions and results. The last stage is integration of trust, at this stage evaluation of trust takes place and guides consumer and brokers towards full trustworthy service provider where his job will run safely and get results quickly.

TAD- Implementation

TAD implementation is based on designing provided in pervious chapter. Further more, TAD stage 1, which was to create a system which rates computing node on basis of there computation power, is implemented and tested successfully. This implementation was successful with the guidance of project supervisor and CIS-Lab staff support.

4.1    Implementation of TAD

After seeing a clear picture of TAD Trust Design and evaluation method, this chapter will describe the implementation for TAD. Although this is not a full implementation, it will provide a platform for future work. Previously chapter 3 discussed about the work of TAD TMS (TAD Trust Management System), From that trust management cycle implementation is constructed. Furthermore when a computing node is discovered by VO management PC it should have that computing node’s profile so form which trust values can be allocated on the basis of that configuration. Which will be done in stage 2 but this implantation includes that part also.

4.2    Aim:

Aim for implementation part was to develop web base open source software that can extract client’s system profile and send to server. Server side can store and evaluate this value and display main characteristics as a graph and rate over all rating. Lastly give a trust value to that PC for further interaction in VO.

4.3    Scenario:

When a VO is formed and every PC are unknown to each other how will they know about each other and mainly how will VO Administrator know about client node. Further more a group of nodes are connected together to form a VO. One of those PC is elected as a server who will monitor VO and the rest are a client who will share information and resource and try to achieve their goals before they do so they must know each other’s capability. TAD will create a profile and rating system for this scenario.

4.4    Simulation:

TAD for this part has two applications; one is server side and the second is client side. Server side is web interfaces and programmed using open source programming language JAVA. The client side of this application is built in JAVA and has a JAVA interface as well. The work flow of this application is as follows in Figure 9.

Workflow of TAD

Workflow of TAD

4.5    Technology used:

4.5.1         Description: 

TAD is a two tier, client-server, and web-application.  Basically it is used to know about the hardware configuration of the remote machine (Client Machine) and represent it with numerical and graphical format. Based on that profile generation it will give every PC a trust rating. The database of configuration of all the remote machines is stored in the server side and user / admin at the server side can easily find out that the whether the configuration of the remote machine is good (trustworthy) or not.  So this is the main application or use of this client-server application. All software and tools used for this prototype is open source.

4.5.2             Tools used :

4.5.2.1        Apache Tomcat 5.5 Web Server

Apache Tomcat 5.5 Web Server is used for hosting the client and server side Web Pages, so that any user in the network can get connected with webpage using local host settings. “Apache Tomcat is an implementation of the Java Servlet and JavaServer Pages technologies. The Java Servlet and JavaServer Pages specifications are developed under the Java Community Process.”[i]  This web server platform also supports every JAVA program.

4.5.2.2        JDK 1.5 or higher at both side Client & Server side

 

JDK 1.5 will help both Clients and server PC to run Developed programs on their PC easily. JDK (Java Development Kit) also allows users to create, compile and run Java programs on local PC.

4.5.2.3        Eclipse 3.2 (for server side coding)

 

“Eclipse is an open source community, whose projects are focused on building an open development platform comprised of extensible frameworks, tools and runtimes for building, deploying and managing software across the Lifecycle.”[I]  This software is used to create Server Side Coding.

 

 

4.5.2.4        Dream weaver CS3 (for HTML coding)

 

Adobe Dream weaver CS3 software is used to create web interface for any application. Fro these projects Java server Pages and JS ages are being used for web interface.

4.5.2.5        Netbeans 5.5 ( for client side coding)

 

Net beans 5.5 is also free open source software. It is built to create Java programs with GUI interface. “Most developers recognize NetBeans as the original free Java IDE. It is that, and so much more. The NetBeans IDE provides support for several languages (C, C++, JavaScript, etc.) and frameworks. NetBeans is an open-source project dedicated to providing rock solid software development products (such as NetBeans IDE and NetBeans Platform) that address the needs of developers, users and the businesses that rely on NetBeans as a basis for their products.”[iii]

4.5.2.6        My SQL (Database):

My SQL is open source database management software that is widely used as a database tool for the web. It provides great Database support for online applications.

4.6    Prototype Description: 

Describing the prototype discussed earlier in figure10 mainly it is divided into three basic parts, firstly Client side download and Installation. Client node is presented with a web page that will show the server’s IP Address and download information. A client downloads two files according to instruction and places them correctly on to the system. Secondly the client user clicks on a JAR client application that opens a small window like shown in figure 10. Then the application will ask for server’s IP address. This can be obtained from the web page. This same process also can be done automatically but due to security and privacy of client this box is there. After typing the IP of the server PC clicks on Ok button that will send information to the server. The TAD test client will show the user if user have sensed information successfully or not which is shown in figure 11.

Trust agent Development Client

Trust agent Development Client

TAD client result

TAD client result

To develop this client side application in this project net beans have been used description of Net beans is given previously in the document. In this section there is discussion on important files related to the TAD client side application. There are two important files for this client side application which are Client.java and SendInfoThread.java.



[[i]] A Vision for the Trust Managed Grid MUHAMMAD HANIF DURAD1, YUANDA CAO2, 1, 2 Department of     Computer Science and Engineering, Beijing Institute of Technology, Beijing, P.R. China


[[i]] Client Conditions of Trust, Within Virtual Organisations: An Application of Butler’s Conditions of Trust Inventory in the UK Construction Sector Nicholas J Thompson, Middlesex University Business School John Raftery, Oxford Brookes University Keith E Thompson, Rowan Consultants


[[i]] Farag Azzedin, Muthucumaru Maheswaran, “Towards Trust-Aware Resource Management in Grid Computing Systems,” ccgrid, p. 452, 2nd IEEE/ACM International Symposium on Cluster Computing and the Grid (CCGRID’02), 2002

[[ii]]  R. Buyya and S. Venugopal, The Gridbus Toolkit for Service Oriented Grid and Utility Computing: An Overview and Status Report, Proceedings of the First IEEE International Workshop on Grid Economics and Business Models (GECON), 2004

[[iii]]  E. Damiani, S. De Capitani di Vimercati, S. Paraboschi, P. Samarati and F. Violante, “A Reputation-Based Approach

for Choosing Reliable Resources in Peer-to-Peer Networks”, in Proceedings of ACM CCS 2002.

[[iv]] C. Liu, L. Yang, I. Foster and D. Angulo, “Design and Evaluation of a Resource Selection Framework for Grid Applications”, in Proceedings of HPDC-11, 2002.

[[v]] Yao Wang and Julita Vassileva: Trust and Reputation Model in Peer-to-Peer Networks. In Proceedings of the 3rd IEE, International Conference on Peer-to-Peer Computing. Linkǒping: IEEE Computer Society (2003), 150–158.

[[vi]] E. Damiani, S. De Capitani di Vimercati, S. Paraboschi, P. Samarati and F. Violante, “A Reputation-Based Approach

for Choosing Reliable Resources in Peer-to-Peer Networks”, in Proceedings of ACM CCS 2002.

[[vii]] Shanshan Song and Kai Hwang, Dynamic Grid Security with Trust Integration and Optimized Resource Allocation, Internet and Grid Computing Laboratory, University of Southern California, Los Angeles, CA. 90089 USA.

[[viii]] Trust and Authorization in the Grid: A Recommendation Model, By: Huu Tran, Paul Watters, Michael Hitchens Vijay Varadharajan, Depurhnent of Computing, Macquarie University NSW 21 09, A USTRALIA

[[ix]] Trust and Authorization in the Grid: A Recommendation Model, By: Huu Tran, Paul Watters, Michael Hitchens Vijay Varadharajan, Depurhnent of Computing, Macquarie University NSW 21 09, A USTRALIA


[[i]] The Global Grid Forum Web Site, http://www.gridforum.org. The Globus Project Web Site, http://www.globus.org.


[[i]] ‘Grid Enabled Computing: A Semiotic Approach to Virtual Organisation Trust’, Tim French, Nik Bessis and Wei Huang,  Department of Computing and Information systems, University of Bedfordshire

[[ii]] Understanding SOA with Web Servi, By Eric Newcomer, Greg Lomow


[[i]]http://gridweb.rrc.uic.edu/twiki/pub/IBG/ReadingList/CanGridComputingHelpUsWorkTogether_Science433.pdf

[[ii]] The Trust Prescription For Healthcare: Building Your Reputation With Consumers, By David A. Shore, Published by Health Administration Press, 2005

[[iii]] Gambetta, (1988)

[[iv]] Page 1, Cooperation without Trust? By Karen S. Cook, Russell Hardin, Margaret Levi

7 responses to “Turst Devloping Agent (TAD)

  1. Nice post. I was checking continuously this blog and I’m inspired! Very helpful information particularly the closing part 🙂 I deal with such info much. I used to be looking for this certain information for a very long time. Thanks and good luck.

  2. You need targeted traffic to your website so why not try some for free? There is a VERY POWERFUL and POPULAR company out there who now lets you try their traffic for 7 days free of charge. I am so glad they opened their traffic system back up to the public! Check it out here: http://bag.sh/16M

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s