**2. A brief history of the resource discovery in grid**

There are different methods for resource discovery in grid environment. Centralized resource discovery approaches (Berman et al., 2003; Chien et al., 2003; Foster & Kesselman, 1997; Germain et al., 2000; Mutka & Livny, 1987; Neary et al., 1999) are one of the mechanisms which suffer from single point of failure and bottlenecks.

Most of the methods in resource discovery tend to peer to peer (Al-Dmour & Teahan, 2005; Ali et al., 2005; Basu et al., 2005; Bharambe et al., 2004; Cai & Hwang, 2007; Iamnitchi et al., 2002; Koo et al., 2006; Nejdl et al., 2002; Oppenheimer et al., 2004; Shen, 2009; Talia et al., 2006; Zerfiridis & Karatza, 2003) which for example use super-peer (Mastroianni et al., 2005) or hierarchical (Liu et al., 2006) models. Apart from similarities between grid and peer to peer systems (Iamnitchi & Talia, 2005), they have critical differences in the field of security, users, applications, scale and etc. (Trunfio et al., 2007).

In the grid some methods use resource brokers to match the user's request with available resources (Bradley et al., 2006). They can consider some factors including software /hardware capabilities, network bandwidth, resource cost and so forth.

Yuhui Deng et al. (2009) suggested a peer to peer model for resource discovery which uses ant colony optimization (ACO). The main idea of this method was inspired from ants, which search their environment for food.

Xue-Sheng Qi et al. (2006) suggested a mechanism which can find multi-accessible resources and choose one of them, which uses a table. When a user wants to use the resource, reservation table will be checked. If the desired resource does not exist, it will be added to the table and the resource will be reserved.

Another method for resource discovery problems would be semantic communities (Li & Vuong, 2005; Li, 2010; Nazir et al., 2005; Zhu et al., 2005; Zhuge, 2004) which allows the grid nodes to communicate with no requirement to a central visiting point.

In (Li, 2010), Li proposes a semantics-aware topology construction method where queries propagate between semantically related nodes. To route the query, it constructs and uses the Resource Distance Vector (RDV) routing table (RDVT).

Gregor Pipan (2010), used TRIPOD overlay network for resource discovery which is based on a hybrid overlay network. He also used a K-Tree. The recommended TRIPOD overlay in this method is especially designed for resource discovery, which is combined two structures in an overlay and also used synthetic coordinate system.

Tangpongprasit et al. (2005) proposed an algorithm which uses the reservation algorithm for finding suitable resources in a grid environment. In the forward path, if there are any resources, they will be saved and reserved, in the backward path, one of them will be selected (if more than one resource has been reserved) and added to the request.

In (2006), Ramos and de Melo propose a structure of master and slave. A master does the updating and the slave restores the information from the machine.

In (2010), Chang and Hu proposed a resource discovery tree using bitmap for grids. It uses two bitmaps called the ''index bitmap'' and ''local resource bitmap'', and the other bitmap would be the ''attribute counter''. The local resource bitmap registers information about the 72 Grid Computing – Technology and Applications, Widespread Coverage and New Horizons

There are different methods for resource discovery in grid environment. Centralized resource discovery approaches (Berman et al., 2003; Chien et al., 2003; Foster & Kesselman, 1997; Germain et al., 2000; Mutka & Livny, 1987; Neary et al., 1999) are one of the

Most of the methods in resource discovery tend to peer to peer (Al-Dmour & Teahan, 2005; Ali et al., 2005; Basu et al., 2005; Bharambe et al., 2004; Cai & Hwang, 2007; Iamnitchi et al., 2002; Koo et al., 2006; Nejdl et al., 2002; Oppenheimer et al., 2004; Shen, 2009; Talia et al., 2006; Zerfiridis & Karatza, 2003) which for example use super-peer (Mastroianni et al., 2005) or hierarchical (Liu et al., 2006) models. Apart from similarities between grid and peer to peer systems (Iamnitchi & Talia, 2005), they have critical differences in the field of security,

In the grid some methods use resource brokers to match the user's request with available resources (Bradley et al., 2006). They can consider some factors including software

Yuhui Deng et al. (2009) suggested a peer to peer model for resource discovery which uses ant colony optimization (ACO). The main idea of this method was inspired from ants, which

Xue-Sheng Qi et al. (2006) suggested a mechanism which can find multi-accessible resources and choose one of them, which uses a table. When a user wants to use the resource, reservation table will be checked. If the desired resource does not exist, it will be added to

Another method for resource discovery problems would be semantic communities (Li & Vuong, 2005; Li, 2010; Nazir et al., 2005; Zhu et al., 2005; Zhuge, 2004) which allows the grid

In (Li, 2010), Li proposes a semantics-aware topology construction method where queries propagate between semantically related nodes. To route the query, it constructs and uses the

Gregor Pipan (2010), used TRIPOD overlay network for resource discovery which is based on a hybrid overlay network. He also used a K-Tree. The recommended TRIPOD overlay in this method is especially designed for resource discovery, which is combined two structures

Tangpongprasit et al. (2005) proposed an algorithm which uses the reservation algorithm for finding suitable resources in a grid environment. In the forward path, if there are any resources, they will be saved and reserved, in the backward path, one of them will be

In (2006), Ramos and de Melo propose a structure of master and slave. A master does the

In (2010), Chang and Hu proposed a resource discovery tree using bitmap for grids. It uses two bitmaps called the ''index bitmap'' and ''local resource bitmap'', and the other bitmap would be the ''attribute counter''. The local resource bitmap registers information about the

selected (if more than one resource has been reserved) and added to the request.

updating and the slave restores the information from the machine.

**2. A brief history of the resource discovery in grid** 

users, applications, scale and etc. (Trunfio et al., 2007).

search their environment for food.

the table and the resource will be reserved.

mechanisms which suffer from single point of failure and bottlenecks.

/hardware capabilities, network bandwidth, resource cost and so forth.

nodes to communicate with no requirement to a central visiting point.

Resource Distance Vector (RDV) routing table (RDVT).

in an overlay and also used synthetic coordinate system.

local resources of nodes and the index bitmap registers the information about its children nodes which exist in the nodes that have child (non-leaf nodes). In this method, the users' query at first becomes AND with the local resource bitmap and if there is no local resource in the node, it becomes AND with the index bitmap. If the result is a nonzero number, the query will be forwarded to all children until reaching the target node. If the result of the AND operation is zero, it means that there are no resource in children and the query will be sent to the father node.

There are some differences between our algorithm and the other ones:

Our algorithm uses a tree structure in which the edges have weight. The advantage of our method is that any node in our weighted tree has a unique path, so the user's query against all of previous methods is not sent to the extra and unnecessary paths. We can directly reach the target node using a resource footprint which is stored in nodes. Furthermore, for resource discovery we only use one bitmap in every node which is for the storing of information about its local resources and the resources of its children and descendant. Also it preserves a footprint of resources and if we need a resource which is available in its children or descendant, we can directly and without any referring to unnecessary and extra nodes, reach the target node. This method significantly reduces the system traffic and increases the performance of system.
