Grids are used extensively for scientific research and computationally intensive business processes, as they provide a wide range of resources for use to its participants. Collaboration and resource sharing form the basic ideologies of a grid, hence it becomes imperative that joining and leaving the grid becomes easy and any independent network of resources can collaborate with other operational grids. To utilize these geographically separated resources efficiently, it is important to have a robust system of discovering resources based on functional and non-functional requirements. The current information service of the Globus Toolkit 4.0 does not feature quality-of-service and the various service-level agreements of each node of the grid. This paper suggests solution for the issues of dynamic update of the grid resource information, and efficient, scalable and QoS-aware resource discovery in independent grids. In this paper, overlay architecture for resource discovery in a grid is proposed in which the functional and nonfunctional requirements are taken into account for resource discovery. The approach combines resource registration with SLA specifications and semantic discovery of resources with a desired QoS.