Dr. Seema Bawa .... Departmental Grids to complete many individual jobs quickly, or run simulations on ...... works in conjunction with other services like GridFTP (Grid File Transfer Protocol) ..... E.Pierce, Choonhan Youn, and Geoffrey C. Fox, The Gateway ... http://www.mnlab.cs.depaul.edu/seminar/fall2002/GridAnatomy.pdf.
DESIGN AND DEVELOPMENT OF GRID PORTAL A Thesis
Submitted in partial fulfillment of the requirement for the award of degree of
Master of Engineering In Software Engineering
Under the Supervision of Dr. Seema Bawa Professor Computer Science and Engineering Department. Batch 2002-2004 By
Bhawna Bansal (8033104) Computer Science & Engineering Department Thapar Institute of Engineering & Technology (Deemed University), Patiala-147004 (India). May 2005
Grid computing has added a new dimension to the world of distributed computing. The Grid infrastructure facilitates the execution of compute-intensive application in a collaborative and dynamic manner. The services provided by Grids enable programmers or users to carry out their work using geographically distributed heterogeneous resources. But to harness the power of the Grid, users need to effectively interact with Grid environment. By developing user-friendly interfaces for the Grid, known as Grid Portals, interaction of users with Grid is made simple, effective and efficient. Grid portals allow users, who may not be aware of the intricate details and working of the Grid, to use the Grid resources effectively and in a user friendly manner. Grid portals provide an easy mechanism for its users to acquire a user account on the Grid and register resources for their jobs. The design and development details of Grid portals have been discussed in detail. Grid Portals can be developed with help of portal development kits like Grid Portal Development Kit and Grid port3. With the help of these kits we can develop the portals that are user friendly and fulfill all the existing standards. A specific Grid portal named “TIET Grid Portal” has been developed using Globus tool kit on windows2000 platform and JAVA.
CHAPTER 1
INTRODUCTION Grids are becoming platformsIRUKLJKSHUIRUPDQFHDQGGLVWULEXWHGFRPSXWLQJ *ULGEHQHILWXVHUVE\SHUPLWWLQJWKHPWRDFFHVVKHWHURJHQHRXVUHVRXUFHVVXFKDVmachines, data, people and devices that are distributed geographically and organizationally. It benefits organizations by permitting them to offer unused resources on existing hardware and software. They allow users to execute compute intensive problems whose computational requirements cannot be satisfied by a single machine. Grid Computing has emerged as a new and important field and can be visualized as an enhanced form of Distributed Computing. With the advent of new technology, it has been realized that paralleling sequential applications could yield faster results and sometimes at a lower cost. Possessing multiprocessor systems was not possible for everyone. Thus, organizations started looking for a better and feasible alternative. It was found that though every organization possessed a large number of computers, which meant that they had huge processing power, but it remained underutilized. A new type of computing then came into existence and was known as Distributed Computing. In Distributed Computing, the problem to be solved is divided into numerous tasks that are then distributed to various computers for processing. The computers being used are connected through a Local Area Network (LAN). Also the problem needs to be divided into modules that can execute in parallel to each other. Parallelism can be either Data Parallelism or Functional Parallelism. Data Parallelism means that each computer performs the same function but for a different data set; whereas in Functional Parallelism, each computer performs a different function for different or same data set. As more and more resource intensive applications (compute-intensive and data-intensive) were developed, a need for larger amount of resource sharing was felt. Then the Grid computing comes into existence. A Grid enables the selection and sharing of a wide variety of geographically distributed resources including supercomputers, storage
systems, data sources, High Performance Computers (HPC), and other resources owned by different organizations for solving compute-intensive and data-intensive problems. Grid computing is the next generation IT infrastructure that promises to transform the way organizations and individuals compute, communicate and collaborate. It offers untapped processing cycles from networks of computers spanning vast geographical boundaries [9]. Sharing in a Grid is not just a simple sharing of files but of hardware, software, data, and other resources. Thus a complex yet secure sharing is at the heart of the Grid. It needs to be clearly defined as to what resources are going to be shared by the users, who are the users who are allowed to share these resources and under what conditions this sharing takes place by its focus on large-scale resource sharing, innovative applications, and, in some cases, high-performance orientation.
Grid focus on ensembles of distributed heterogeneous resources used as a platform for high performance computing. Grid services utilize the available computational re-sources so that tasks are run on whatever machine currently has available capacity. A Grid also allows a single large computation to be spread across several machines, each of which is executing some portion of the computation.
1.1 HISTORY OF GRID The term “Grid” was coined in the mid1990s to denote a proposed distributed computing infrastructure for advanced science and engineering. The concept of Computational Grid has been inspired by the ‘electric power Grid’, in which a user could obtain electric power from any power station present on the electric Grid irrespective of its location, in an easy and reliable manner. When we require additional electricity we have to just plug into a power Grid to access additional electricity on demand, similarly for computational resources plug into a Computational Grid to access additional computing power on demand using most economical resource [25]. The theory behind "Grid Computing.” is not to buy more resources but to borrow the power of the computational resources you need from where it's not being used”. Many of the basic
ideas behind the Grid have been around in one form or other throughout the history of computing. One of the "novel" ideas of the Grid is sharing computing power.
There is a certain amount of "reinventing the wheel" going on in developing the Grid. However, each time the wheel is reinvented; it is reinvented in a much more powerful form, because computer processors, memories and networks improve at an exponential rates. 7HFKQRORJ\
@
$SSOLFDWLRQ /D\HU 7KH ILQDO OD\HU LQ *ULG DUFKLWHFWXUH FRPSULVHV WKH XVHU DSSOLFDWLRQV WKDW RSHUDWH ZLWKLQ D 'DWD *ULG HQYLURQPHQW $SSOLFDWLRQV DUH FRQVWUXFWHG LQ WHUPV RI
DQGE\FDOOLQJXSRQVHUYLFHVGHILQHGDWDQ\OD\HU$WHDFKOD\HUWKHUHDUHFHUWDLQSURWRFROV WKDW SURYLGH DFFHVV WR VRPH XVHIXO VHUYLFH UHVRXUFH PDQDJHPHQW GDWD DFFHVV UHVRXUFH
GLVFRYHU\DQGVR IRUWK $WHDFKOD\HU$3,VPD\ DOVREHGHILQHGZKRVHLPSOHPHQWDWLRQ
H[FKDQJHSURWRFROPHVVDJHVZLWKWKHDSSURSULDWHVHUYLFHV WRSHUIRUPGHVLUHGDFWLRQV
1.4.2 Grid Components
According to the Grid architecture discussed above, the various Grid components can be divided into the following four categories [15], as shown in Figure 1.3:
1. Grid Fabric: All the physical resources that are geographically distributed and connected via the Internet are collectively known as the Grid Fabric. These resources could be computers (such as workstations, clusters, supercomputers, HPC) having different configurations as well as other resources such as storage systems, resource management systems, data resources, etc.
2. Core Grid Middleware: This offers the core Grid services such co-allocation of resources, data access, information services, security, and Quality of Service (QoS) parameters.
Grid Applications and Portals
User Level Grid Middleware
Resource Brokering
Resource scheduling
Development Environments, Languages, Tools Core Grid Middleware
Security
Information Services
Resource Co-allocation
QoS
Grid Fabric
Computers
Storage Servers
Data Servers
Others Resources
)LJXUH&RPSRQHQWVRI/D\HUHG*ULG$UFKLWHFWXUH>@
3. User level Grid Middleware: This includes application development environments, programming tools and languages, and brokers for resource management and scheduling tasks.
4. Grid Applications and Portals: Grid applications are the applications to be executed on the Grid (those that require the Grid resources). Grid portals offer web-enabled access to Grid services. Using these portals the users can easily submit their applications to the remote and widely distributed resources and gather results with convenience. The steps required to realize a Grid include: Combining individual software and hardware components into a single entity. Deploying the middleware’s. Developing applications in a manner so that they can efficiently utilize the available services, resources, and the infrastructure.
1.4.3 Design Features required by a Grid Following are the four main aspects that characterize a Grid and are important design features required by a Grid [15]:
•
Multiple Administrative Domains and Autonomy- A Grid consists of resources that belong to different organizations, that means to different administrative domains, which are geographically distributed. While designing a Grid resource owner’s autonomy and the resource management and usage policies of the organization to which the resource belongs, should be taken into consideration.
Heterogeneity- A Grid is composed of heterogeneous systems exhibiting multiple technologies.
Scalability- Grid applications use multiple resources and at times the anticipated performance may not be achieved because of limited bandwidth or heavy traffic due to the presence of large number of resources. Thus, Grid applications must be designed keeping these factors in mind.
Dynamicity/Adaptability- In a Grid, resource failure is a rule rather than an exception. A Grid resource, as is the case with any other resource, can fail under certain situations. Thus, the resource managers and applications should be capable of changing their behavior dynamically and adapting to the available resources and services.
1.5 OTHER PRESPECTIVE ON GRIDS The perspective on Grids that we have seen is of course not the only view that can be taken. We summarize here—and critique—some alternative perspectives
1. The Grid is a next-generation Internet. “The Grid” is not an alternative to “the Internet”: it is rather a set of additional protocols and services that build on Internet protocols and services to support the creation and use of computation- and dataenriched environments. Any resource that is “on the Grid” is also, by definition, “on the Net.”
2. The Grid is a source of free cycles. Grid computing does not imply unrestricted access to resources. Grid computing is about controlled sharing. Resource owners will typically want to enforce policies that constrain access according to group membership, ability to pay, and so forth. Hence, accounting is important, and Grid architecture must incorporate resource and collective protocols for exchanging usage and cost information, as well as for exploiting this information when deciding whether to enable sharing.
3. The Grid requires a distributed operating system. In this view Grid software should define the operating system services to be installed on every participating system, with these services providing for the Grid what an operating system provides for a single computer: namely, transparency with respect to location, naming, security, and so forth. Put another way, this perspective views the role of Grid software as defining a virtual machine. However, we feel that this perspective is inconsistent with our primary goals of broad deployment and Interoperability. The tremendous physical and administrative heterogeneities encountered in Grid environments means that the traditional transparencies are unobtainable; on the other hand, it does appear feasible to obtain agreement on standard protocols.
4. The Grid requires new programming models. Programming in Grid environments introduces challenges that are not encountered in sequential (or parallel) computers, such as multiple administrative domains, new failure modes, and large variations in performance. However, we argue that these are incidental, not central, issues and that the basic programming problem is not fundamentally different. As in other contexts, abstraction and encapsulation can reduce complexity and improve reliability. But, as in other contexts, it is desirable to allow a wide variety of higher-level abstractions to be constructed, rather than enforcing a particular approach. So, for example, a developer who believes that a universal distributed shared memory model can simplify Grid application development should implement this model in terms of Grid protocols, extending or replacing those protocols only if they prove inadequate for this purpose. Similarly, a developer who believes that all Grid resources should be presented to users as objects needs simply to implement an object-oriented “API” in terms of Grid protocols.
5. The Grid makes high-performance computers superfluous. The hundreds, thousands, or even millions of processors that may be accessible within a VO represent a significant source of computational power, if they can be harnessed in a useful fashion. This does not imply, however, that traditional high-performance computers are obsolete. Many problems require tightly coupled computers, with low latencies
and high communication bandwidths; Grid computing may well increase, rather than reduce, demand for such systems by making access easier.
1.6 WORKING AREAS OF GRID COMPUTING Grid computing is the flavor of the day and is being used extensible. Very soon it is going to change the face of everyday computing. At present, following are the main areas of the Grid in which work is being carried out [26, 27]
*ULG ,QIRUPDWLRQ 6HUYLFHV 2EWDLQLQJ KLJK SHUIRUPDQFH H[HFXWLRQ DQG UHVXOWV UHTXLUHV D
FDUHIXOVHOHFWLRQRIFRPSXWHUVQHWZRUNVDQGRWKHUUHVRXUFHVXVHGE\WKHDSSOLFDWLRQ,Q
DGGLWLRQWRWKHVHWKHSURWRFROVDQGDOJRULWKPVEHLQJXVHGE\WKHDSSOLFDWLRQVKRXOGDOVREH
DSSURSULDWH2SWLPDOVHOHFWLRQLQWXUQUHTXLUHVWKDWWKHXVHUVKDYHDFFHVVWRDFFXUDWHDQG
XSWRGDWH LQIRUPDWLRQ DERXW WKH VWUXFWXUH DQG VWDWH RI WKH UHVRXUFHV 7KH DUHD RI *ULG
,QIRUPDWLRQ6HUYLFHVGHDOVZLWKDOODQGWULHVWRVDWLVI\WKHVHUHTXLUHPHQWV
6HFXULW\ 6HFXULW\ LV DW WKH KHDUW RI *ULG FRPSXWLQJ 6LQFH WKH FRPPXQLFDWLRQ EHLQJ
GRQHLVDFURVVPXOWLSOHDGPLQLVWUDWLYHGRPDLQVHDFKGRPDLQKDYLQJLWVRZQORFDOVHFXULW\
VHFXULW\LVDQLPSRUWDQWIDFWRUWKDWQHHGVVSHFLDODWWHQWLRQ$QHHGH[LVWVWRHVWDEOLVKVHFXUH UHODWLRQVKLSV EHWZHHQ WKH ODUJH QXPEHU RI XVHUV DQG UHVRXUFHV 7KH ZRUN LQ WKLV DUHD
IRFXVHVRQGHYHORSLQJWKHVHFXULW\DOJRULWKPVDQGDOVRQHZPHFKDQLVPVIRUILQHJUDLQHG
DFFHVVFRQWUROLQD*ULG
5HVRXUFH 0DQDJHPHQW 6FKHGXOLQJ 7KH ZRUN LQ WKLV DUHD IRFXVHV RQ SURYLGLQJ XQLIRUP
PHFKDQLVPVIRUQDPLQJDQGORFDWLQJUHVRXUFHVRQUHPRWHV\VWHPVDQGIRUXWLOL]LQJWKHVH
UHVRXUFHV IRU GLVWULEXWHG FRPSXWDWLRQV ,W DOVR WDNHV FDUH RI KRZ YDULRXV UHVRXUFHV DUH
VFKHGXOHG WKDW LV KRZ WKH DYDLODEOH UHVRXUFHV KDYH EHHQ DOORFDWHG WR WKH YDULRXV
DSSOLFDWLRQVUXQQLQJRQWKH*ULG
'DWD $FFHVV DQG 0DQDJHPHQW $FFHVV WR GLVWULEXWHG GDWD LV DV FUXFLDO DV DFFHVV WR
GLVWULEXWHGFRPSXWDWLRQDOUHVRXUFHV'LVWULEXWHGDSSOLFDWLRQVRIWHQUHTXLUHDFFHVVWRODUJH
DPRXQWVRIGDWDDQGWKDWWRRORFDWHGDWZLGHO\VHSDUDWHGORFDWLRQV7KHZRUNLQWKLVDUHD
DWWHPSWV WR LGHQWLI\ SURWRW\SH DQG HYDOXDWH WKH WHFKQRORJLHV UHTXLUHG WR VXSSRUW WKH
UHTXLUHPHQWRIDFFHVVLQJZLGHO\GLVWULEXWHGGDWDIRUFROODERUDWLYHDSSOLFDWLRQV
$SSOLFDWLRQ'HYHORSPHQWDQG3URJUDPPLQJ(QYLURQPHQWV7KHZRUNLQWKLVDUHDIRFXVHVRQ
GHYLVLQJPHWKRGVWRLQWHJUDWH *ULGWHFKQRORJLHVRU VHUYLFHVLQWRWKHH[LVWLQJ FRPPRGLW\ WHFKQRORJLHVDQG IUDPHZRUNV 7KLVZRXOGHDVHWKHGHYHORSPHQWRIDSSOLFDWLRQVWKDWXVH
*ULG VHUYLFHV DV WKH *ULG VHUYLFHV ZRXOG EH LQWHJUDWHG LQWR H[LVWLQJ DSSOLFDWLRQ
GHYHORSPHQWHQYLURQPHQWVDQGODQJXDJHVVXFKDV-$9$&25%$3\WKRQDQG3HUO
1.7 ADVANTAGES OF GRID COMPUTING Some of the advantages of Grid Computing are listed below [28, 29] Seamless and secure access to large number of geographically distributed resources. Reduction in average job response time may occur but an overhead of limited network bandwidth and latency exists. Provides users around the world with dynamic and adaptive access to unparalleled levels of computing. With the infrastructure provided by the Grid, scientists are able to perform complex tasks, integrate their work and collaborate remotely. Grids can lead to savings in processing time. Efficient, effective, and economic utilization of available resources. Increased availability and reliability of resources. Unprecedented Price-to-Performance ratio.
In this chapter what the Grid is and how it is different from the distributed computing, from where the Grid originates, when it comes into the picture, basic idea behind the Grid, types of Grid, advantage of Grid have been discussed. The next chapter about the Portals and how the portal is different from the web services and types of portals.
CHAPTER 2
GRID PORTALS Computational Grids provide users with seamless access to computational power. But generally it is found that to submit their job and get the results users are required to have explicit knowledge about the working environment, the resources and means to express their requirements. This means that if the user wants to use the Grid resource in the best manner, then he/she must be aware of the resource structures and status. But this requirement complicates the task for the user. Because it is not always that the user is very knowledgeable about the Grid environment. Also, this implies that if the user does not know the Grid well, he/she cannot get the best resource and in turn the best or at least acceptable performance for his/her job(s). Thus, in order to simplify the task for the user, it is required that the usage of the Grid should be made easier and
transparent for the user. And this solution can be achieved by developing user friendly interfaces for the Grid [10]. Such interfaces are generally coupled with the various Grid services, but these services remain transparent to the user. The user just needs to submit his/her job through the easy to use interface and the rest is taken care of by the interface. Most of the institutes/ universities that are part of the various ongoing Grid projects (and provide the users with the facility to use the Grid services and resources), have developed a user interface in order to relieve the user of making decisions regarding resource selection, specifications, and job execution by themselves. Computational Grid has now become synonymous to an infrastructure that provides ubiquitous access to a diverse set of geographically distributed resources. But the Grid infrastructure in itself is capable of just providing the Grid services and the methods to access these services are to be decided and chosen by the users of the Grid. Most of the user interfaces developed is actually a part of the Problem Solving Environment (PSE) that is developed to solve problems of a particular domain using the Grid. A PSE can approximately can be defined as “A problem solving environment is a computational system that provides a complete and convenient set of high level tools for solving problems, choose solution strategy, interact with and manage a appropriate hardware and software resources, realize and analyze results, and record and coordinate extended problem solving tasks. A user communicates with a PSE in the language of the problem, not in the language of a particular operating system, programming language, or network protocol”. This means that there should be as many PSEs as the number of applications. This in turn implies that for every application, the user needs the specific PSE deployed to his/her computer. It would be more beneficial from users point of view if all PSEs related to a particular domain be placed at a central place in the Grid, from where the user can access them as and when required. In conjunction to the Grid, the web turns out to be the best medium to deploy these PSEs to the users’ computer [8]. Therefore the ‘Grid Portals’ come into existence. The term ‘Grid Portal’ is inspired from the commonly used term ‘Web Portal’, which is defined as an entry point or starting site for the services and content provided by the World Wide Web (WWW). A ‘Grid Portal’ can be defined as “a web based application server enhanced with the necessary software to enable users to communicate with the Grid services and resources”. A Grid Portal provides the users
with a view of all the hardware, software, data and other resources that the users need (and is authorized to use) to solve problems of a particular domain. In addition to this these resources are provided to the users through a single access point. Portals are different from the Web because web interfaces are commonplace
Figure 2.1- A Problem Solving Environment Portal acting as an interface between the Grid users (Clients) and the Grid resources (Servers) [10] and therefore will be familiar to all facility users, indeed they may have found out about the facility or registered to use it via an institutional Web site (or portal). Google and other search engines are ubiquitous as tools for obtaining information present on the Web, and have effectively replaced encyclopedia and libraries with a Web-based interface to distribute and constantly evolving information source. Web sites depend on the fact that the user has a browser (Mozilla, Netscape, Opera, or Internet Explorer) but carry out most functionality on a server. The browser "speaks" HTTP and will render HTML sent to it. Several additions to the basic protocol allow for instance cookies to be used for persistent communication, digital certificates to be used for authentication and JavaScript to give some necessary client-side functionality. Web sites typically provide access to a variety of permanently on-line data linked using HTML references. CGI, the Common Gateway Interface, provides a mechanism to invoke a script or executable program running on a Web server and the Grid Portal is an online facility that provides a personalized, single point of access to resources that support the end user in one or more tasks (resource discovery, learning, research, buying plane tickets, booking hotel rooms,
etc.). The resources made available via a portal are typically brought together from more than one source. "Technically, a portal is a network service that brings together content from diverse distributed resources using technologies such as cross searching, harvesting, and alerting, and collates this into an amalgamated form for presentation to the user. For users, a portal is a, possibly personalized, common point of access where searching can be carried out across one or more than one resource and the amalgamated results viewed. “A portal is a web based application that commonly-provides personalization, single sign on, content aggregation from different sources and hosts the presentation layer of Information Systems. Aggregation is the action of integrating content from different sources within a web page. A portal may have sophisticated personalization features to provide customized content to users. Portal pages may have different set of portlets creating content for different users.”
GENERAL GRID PORTAL DESIGN
Figure 2.2 -General Portal Design [10]
2.1 TYPES OF GRID PORTALS User Portals Application Portals. Horizontal vs. Vertical Portals Information Portals Scientific Portals
• User Portals User portal provides Grid services such as single sign-on, job submission and status tracking, etc. for a Virtual Organization (VO) which the user can customize to their own desires User can select which information they find important Often provides user with access to computational resources or environment.
• Application Portals Application portal is the interface for most scientific users who wish to harness the computational power on the Grid to execute complex application tasks in a problem solving environment (PSE).
• Horizontal vs. Vertical Portals Horizontal Portal: The information provided is wide but not deep. E.g. Yahoo provides millions of links, but does not give a deep understanding of the information
Vertical Portal: Provides detailed information on a specific topic. E.g. http://www.fifaworldcup.com provides very specific information about the World Cup Soccer tournament
• Information Portals Portals which provide the user with information or links to information .e.g. Yahoo. Com, Horizontal portal
2.2 WHAT USERS WANT FROM GRID PORTAL?
The primary requirements for a Grid portal system from a user’ perspective involves access to Grid services. These include Security services Remote File management. Access to information services. Application interfaces. Access to collaboration •
Security:
The heterogeneous nature of resources and their differing security
policies are complicated and complex in the security schemes of a Grid Computing environment. These computing resources are hosted in differing security domains and heterogeneous platforms. The other security requirements are often centered on the topics of data integrity, confidentiality, and information privacy [19]. The Grid Computing data exchange must be protected using secure communication channels. The most notable security infrastructure used for securing Grid is the Grid Security Infrastructure (GSI). In most cases, GSI provides capabilities for single sign-on, heterogeneous platform integration and secure resource access/authentication.
•
Resource Management: The tremendously large number and the heterogeneous potential of Grid Computing resources cause the resource management challenge to be a significant effort topic in Grid Computing environments. These resource management scenarios often include resource discovery, resource inventories, fault isolation, resource provisioning, resource monitoring, a variety of autonomic capabilities,[5] and service-level management activities. The most interesting aspect of the resource management area is the selection of the correct resource from the Grid resource pool, based on the service-level requirements, and then to efficiently provision them to facilitate user needs. This resource provides a robust job management service for users, which includes job allocation, status management, data distribution, and start/stop jobs.
•
Information Services: Information services are fundamentally concentrated on providing valuable information respective to the Grid Computing infrastructure resources. These services leverage and entirely depend on the providers of information such as resource availability, capacity, and utilization, just to name a few.
•
Data Management: Data forms the single most important asset in a Grid Computing system. This data may be input into the resource, and the results from the resource on the execution of a specific task [19]. If the infrastructure is not designed properly, the data movement in a geographically distributed system can quickly cause scalability problems. It is well understood that the data must be near to the computation where it is used. This data movement in any Grid Computing environment requires absolutely secure data transfers, both to and from the respective resources. The current advances surrounding data management are tightly focusing on virtualized data storage mechanisms, such as storage area networks (SAN), network file systems, dedicated storage servers, and virtual databases. These virtualization mechanisms in data storage solutions and common access mechanisms (e.g., relational SQLs, Web services, etc.) help developers and providers to design data management concepts into the Grid Computing infrastructure with much more flexibility than traditional approaches. Some of the considerations developers and
providers must factor into decisions are related to selecting the most appropriate data management mechanism for Grid Computing infrastructures. This includes the size of the data repositories, resource geographical distribution, security requirements, schemes for replication and caching facilities, and the underlying technologies utilized for storage and data access. •
Collaboration: Collaborative applications are concerned primarily with enabling and enhancing human-to-human interactions. Such applications are often structured in terms of a virtual shared space. Many collaborative applications are concerned with enabling the shared use of computational resources such as data archives and simulations
2.3 PORTAL ENVIORNEMENT A Portal Environment (which is an integral part of a Portal) provides systemlevel services for supporting Portlets (“mini-applications”) that reside in the Portal. Portlets is specialized content area that occupies a small window of a portal page. “Portlets are the pluggable user-interface components, to provide a presentation layer to information systems.” A portlet provides a “mini-window” within a portal page. Multiple portlets can be composed in a Portal page.Portlets are contained by the portlet containers. A portlet container runs portlets and provides them with the required runtime environment. It manages the lifecycle of the portlet. It provides persistent storage for portlet preference.
2.3.1 PORTLET MODEL When considering the functions that Grid Portal support, we can identify them into two categories, which we label them as Basic Portal and Application Portal. The former involves some fundamental functions for access to Grid system, such as information discovery, single sign-on (authentication and user profile management), file/data management, job submission etc [11]. The latter is designed for certain applications, which mainly charges application related logic issues.
However, in present Portlet mechanisms, Portlets are always designed for certain applications; the implementation of basic functions and application functions are not treated respectively, which resulted in certain redundancy work and inflexibility in constructing portals. Therefore, we propose a Layered Portlet Model to address this problem. Similar toGrid Portal, we also model the Portlet into Application Portlet and Basic Portlet, as Fig.3shows.
G r id P o r ta l
A p p lic a tio n P o r tle t
B a s ic P o r tle t
Figure 2.3- Layered Portlet Architecture [11]
The Basic Portlet is in charge of interoperation with basic grid services. It implements the functions similar to Basic Portal’s, but in a component manner. And the Application Portlet is equivalent to the Application Portal. In Application Portlet certain interfaces are provided for Basic Portlets or some other lower-layered more specific Application Portlets. In a Portal the Basic Portlet and the Application Portlet may not necessarily come from the same Grid node. One Basic Portlet can be invoked in one or more Application Portlets, vice versa, an Application Portlet can also invoke several Basic Portlets. The benefits of our Layered Portlet are presented as follows:
1. We should strongly mention that, the layered design partner of Portlet make it Possible that each part be developed independently. The Grid Portal designer only need to consider how to integrate multiple portlets into a user-oriented interface on
the front end, the Grid Node service provider only need to encapsulate their services into various Basic Portlets and Application Portlets [11]. Finally, the middleware developers only need to deal with the Application level logic based on those lowlevel Portlets.
2. Our Layered Portlet model will greatly promote the reusability of Portlets components and reduce the complexity of application development. The Basic Portlet only needs to provide limited kinds of functions; for the Application Portlet some general application services they used are also the similar to each other. Also the same for the user interface design of the ultimate Grid Portals. All these form the base for reusability.
3. This mechanism blazes a possible economical market for Portal construction. In a market environment, every Portlet has its own weight, and any Portal and Portlet prefer to select components with high Performance/Cost ratio. And the competition is based on the dynamic binding of Portlets. For instance, for an Application Portlet that bases on several lower-levered Application Portlets, when it finds a new lowerlevered Application Portlet with the same function but better performance, it can dynamically binds to that application Portlet immediately.
2.3.2 BENEFITS OF PORTLETS The portlet model gives users a flexible, easy-to-use interface, and it gives portal developers a model to create pluggable and dynamic application support Portlets, that allow portal components to be shared between projects Web component easily plug into and run in enclosing web applications like portal
Facilitates both users and developers
2.4 PORTAL COMPUTING Delivering the power of the grid requires a mechanism that enables easy, secure access to aggregated resources. Secure, anytime, anywhere access to distributed technical applications and data is possible through portal architectures. A portal is a secure Web environment that enables an organization to aggregate and share content — information, services, and applications — with customers, business partners, employees and suppliers. Portals bring together technology, business processes, and business partners, enabling the organization to exchange information inside and outside the firewall [13]. A portal allows an organization to employ a single URL through which users can gain browser-based access to customized or personalized information, as well as applications. With a customizable interface that provides content that meets each individual user’s specific needs, portals spare users from needing to hunt for information by making it accessible from any networked device. By aggregating information, standardizing tools, and providing global access to applications and information, portals give organizations the agility they need to provide distributed shared services to users through a single point of access (Figure 2-4).
Figure 2.4- Basic functionality of Portal in Portal Computing [13]
2.5 PORTAL COMPUTING AND THE GRID Today, portals can be used to access a single server, a cluster of systems, or even a complex grid of workstations and servers, creating opportunities for more organizations and their users.
Figure 2.5- Portal and Grid [13] Indeed, employing portal technology in HPTC environments offers the ability for users to work more effectively by allowing complex jobs to run with greater efficiency and at lower cost [13]. Multiple applications can run across clusters of servers that are combined into a unified Grid Computing system, giving users easy access to complex applications and sophisticated computing resources. Grid Portals are sprouting like a field of flowers in spring, all over the world. Today in this world numbers of people do lots of work on the development of userfriendly interface for the Grid. And there are no different standards are available for the development of Grid portals and portlets.Grid Portal is composed of various basic or
application Portal. In the next chapter few of these available standards have been discussed.
CHAPTER 3
GRID PORTALS AND STANDATRDS 3.1 CLASSIFICATION OF GRID PORTALS Although portals for various scientific disciplines might look quite different, actually they can be classified into three categories: User-oriented Portals. Application-oriented Portals.
Developing-oriented Portals.
•
USER ORIENTED PORTALS: usually offer particular services for certain community or research groups.
•
$33/,&$7,2125,(17(' 3257$/6 DV WKH QDPH VKRZV EXLOG XS DQ DSSOLFDWLRQ VSHFLILFHQYLURQPHQWIRURUFKHVWUDWLQJFRPSOH[VFLHQWLILFWDVNVLQYROYLQJUHPRWHUHVRXUFHV
FROODERUDWLRQ&DFWXV/DWWLFH*DWHZD\>@DUHDOOWKLVNLQGRISRUWDOV
)CVGYC[ $ FRPSXWDWLRQDO ZHE SRUWDO GHVLJQHG WR SURYLGH VHFXUH DFFHVV WR KLJK
SHUIRUPDQFH FRPSXWLQJ UHVRXUFHV DW '2' 0RGHUQL]DWLRQ 2IILFH·V 0DMRU 6KDUHG
5HVRXUFH &HQWHUV 065& YLD D VWDQGDUG ZHE EURZVHU ,W PD\ EH FDOOHG ´V\VWHP
SRUWDOµDVLWLVGHDOVZLWKTXHXLQJV\VWHPVILOHV\VWHPVPDVVVWRUDJHV\VWHPHWF7KH
VHUYLFHVSURYLGHGDUH
¾ 6HFXUHDXWKHQWLFDWLRQDQGDXWKRUL]DWLRQIRUFDUEXUL]HGXVHUV
¾ 6WDWHPDQDJHPHQWZKLFKDOORZVXVHUVWRFUHDWHDUFKLYHDQGHGLWVHVVLRQV
¾ 0XOWLSOH ILOH XSORDGLQJ DQG GRZQORDGLQJ EHWZHHQ XVHU·V GHVNWRS DQG EDFNHQGUHVRXUFHV
¾ 5HPRWHILOHPDQLSXODWLRQRIXSORDGHGILOHV
¾ %DWFKVFULSWJHQHUDWLRQ
¾ -REVXEPLVVLRQ ¾ -REPRQLWRULQJ
¾ $SSOLFDWLRQ PDQDJHPHQW $SSOLFDWLRQ DQG UHVRXUFH LQIRUPDWLRQ FDQ EH DGGHG GHOHWHG DQG PRGLILHG YLD D PDQDJHPHQW ZL]DUG LQWHUIDFH WR DQ
;0/GDWDUHFRUG
7KH WHFKQRORJLHV DQG VRIWZDUH·V XVHG DUH *OREXV &25%$ ;0/ -63 -$9$ DQG
6HUYOHWV
.CVVKEG2QTVCN$SRUWDOGHYHORSHGWRSURYLGHDFRQYHQLHQWLQWHUIDFHIRUFKHFNLQJ
WKHVWDWXVRIEDWFKMREVVXEPLWWHGWRDVHWRIJHRJUDSKLFDOO\GLVWULEXWHGFOXVWHUV
DQGIRUPRYLQJGDWDILOHV>@$OVRLWHQDEOHVWKHXVHUWRHYDOXDWHWKHXVHRI-$9$
6HUYOHWV;0/DQGRWKHUVRIWZDUHWHFKQRORJLHVIRU*ULGVHUYLFHV7KHVHUYLFHV
SURYLGHGDUH
¾ %DWFKTXHXHOLVWLQJ
¾ 6XEPLWRUGHOHWHEDWFKMREV
¾ 7UDQVIHUILOHVDPRQJGLVWULEXWHGVLWHV
7KH WHFKQRORJLHV DQG VRIWZDUH·V XVHG DUH -$9$ 6HUYOHWV ;0/ -'%& 2SHQ66/
$SDFKH7RPFDWDQG2SHQ3%6
6JG%CEVWU%QFG#2TQDNGO5QNXKPI'PXKTQPOGPVHQTVJG)TKFWKH&DFWXV &RPSXWDWLRQDO 7RRONLW &&7 LV DQ RSHQ VRXUFH SUREOHPVROYLQJ HQYLURQPHQW GHVLJQHG IRU VFLHQWLVWV DQG HQJLQHHUV > @ ,WV PRGXODU VWUXFWXUH HQDEOHV HDV\
FRPSXWDWLRQ DFURVV GLIIHUHQW DUFKLWHFWXUHV DQG FROODERUDWLYH FRGH GHYHORSPHQW &DFWXV XVHV D *ULG HQDEOHG LPSOHPHQWDWLRQ RI WKH 0HVVDJH 3DVVLQJ ,QWHUIDFH
03,&+* &DFWXV FDQ UXQ RQ GLYHUVH DUFKLWHFWXUHV DQG VXSSRUWV DSSOLFDWLRQV
GHYHORSHGRQVWDQGDUGZRUNVWDWLRQVODSWRSVWKDWQHHGWRUXQRQFOXVWHUVRUVXSHU
FRPSXWHUV &DFWXV SURYLGHV DFFHVV WR PDQ\ FXWWLQJ HGJH VRIWZDUH WHFKQRORJLHV EHLQJ GHYHORSHG LQ WKH DFDGHPLF UHVHDUFK FRPPXQLW\ LQFOXGLQJ WKH *OREXV
0HWDFRPSXWLQJ 7RRONLW +') SDUDOOHO ILOH ,2 DQG WKH 3(76F VFLHQWLILF
ODERUDWRU\ DGDSWLYH PHVK UHILQHPHQW :HE LQWHUIDFHV DQG DGYDQFHG YLVXDOL]DWLRQ
WRROV7KHIHDWXUHVRIIHUHGE\FDFWXVDUH
¾ 3HUIRUP SDUDOOHOHG SURJUDPPLQJ LQ DQ HDV\ EXW SRZHUIXO PDQQHU XVLQJ ODQJXDJHVRI\RXUFKRLFH
¾ 'HYHORSFRGHRQWKHPRVWFRQYHQLHQWPDFKLQHDYDLODEOHIRUH[DPSOH\RXU
ZRUNVWDWLRQODSWRS DQG WKHQ PRYH \RXU FRGH WR D VXSHUFRPSXWHU RU FOXVWHU
¾ :RUN ZLWK FROODERUDWRUV RQ WKH VDPH FRGH DQG DYRLG KDYLQJ \RXU SURJUDPVIUDJPHQWHG
¾ 0DNH XVH RI ODWHVW VRIWZDUH WHFKQRORJ\ IRU H[DPSOH WDNH DGYDQWDJH RI
UHVHDUFK JURXSV WKDW VSHQG WKHLU WLPH WKLQNLQJ DERXW WKH IDVWHVW ZD\ WR
EULQJ VLPXODWLRQ GDWD WR GLVN RU KRZ WR YLVXDOL]H LW ZKLOH WKH FRGH LV UXQQLQJ
¾ &DFWXVLVKLJKO\SRUWDEOHVXSSRUWHGRQPRVWDUFKLWHFWXUHV
¾ 3URYLGHV SRZHUIXO $3, 8VHU PRGXOHV SOXJLQWR FRPSDFW FRUH DQG FRQILJXUDEOHLQWHUIDFHVVFKHGXOHVDQGSDUDPHWHUV
¾ $GYDQFHGFRPSXWDWLRQDOWRRONLW
¾ $FFHVVLEOH03,EDVHGSDUDOOHOLVPIRUILQLWHGLIIHUHQFH*ULGV
¾ $FFHVVWRDYDULHW\RIVXSHUFRPSXWLQJDUFKLWHFWXUHVDQGFOXVWHUV
¾ 6HYHUDOSDUDOOHOHG,2OD\HUV
¾ )L[HGDQGDGDSWLYHPHVKUHILQHPHQWXQGHUGHYHORSPHQW ¾ &ROODERUDWLYHGHYHORSPHQW
¾ ,QWHUDFWLYHPRQLWRULQJVWHHULQJDQGYLVXDOL]DWLRQ(QDEOHVVKDULQJRIFRGH EDVH
¾ 7HVW6XLWHFKHFNLQJWHFKQRORJ\
¾ 9LVXDOL]DWLRQWRROV
7KHWHFKQRORJLHVDQGVRIWZDUHVXVHGDUH&&)RUWUDQ)RUWUDQ3HUO&DFWXV
&RQILJXUDWLRQ/DQJXDJH&&/ *OREXVDQG-$9$ •
'(9(/23,1*25,(17('3257$/6GLIIHUZLWKWKHIRUHJRLQJWZRNLQGVLQWKDW WKH\DUHGHVLJQHGWRIDFLOLWDWHXVHURULHQWHGSRUWDOVRUDSSOLFDWLRQRULHQWHGSRUWDOV
GHYHORSPHQWWKHPRVWIDPRXVRIZKLFKLV*3'.DQG*ULGSRUWVHULHV>@
Grid Portal Development Kit: One of the most exciting areas of Grid application development is the construction of portals to allow computational
scientists, researchers and high performance computer/application user’s access to resources via an easy to use web page interface. The goal is to develop common components that can be used by portal developers to build a website that can securely authenticate users to remote resources and help them make better decisions for scheduling jobs by allowing them to view pertinent resource information obtained and stored on a remote database. In addition, profiles are created and stored for portal users allowing them to track and monitor jobs submitted and view results [8]. The Grid Portal Development Kit provides both a portal development environment for the creation of new portals as well as a collection of Grid service beans used to accomplish basic operations such as job submission, file transfer and querying of information services.
Architecture: The envisioned portal architecture is a standard three tier model, where a client browser securely communicates to a web server over an https connection. The web server is capable of accessing various Grid services using the Globus infrastructure. The Globus toolkit provides mechanisms for securely
submitting
jobs
to
a
Globus
gatekeeper,
querying
for
hardware/software information using LDAP, and a secure PKI infrastructure using GSI. By taking advantage of the My proxy package, also distributed as part of the Grid Portal Collaboration, users can use the portal to gain access to remote resources from anywhere without requiring their certificate and private key be located on the same machine/device running a web browser. The proxy server is responsible for maintain user's delegated credentials, proxies that can be securely retrieved by a portal for later use. The Grid Portal Development Kit is designed to provide access to Grid services by using Java Server Pages (JSP) and Java Beans using Tomcat, an open source web application server developed by Sun Microsystems as the latest reference implementation of Java Servlets v2.2 and Java Server Pages
v1.1. Tomcat can be easily configured to work with
Figure 3.1-Grid Portal development kit Architecture [8] an existing web server e.g. Apache, Microsoft IIS, or Netscape as well as its own simple web server that can be used for development purposes. The GPDK is packaged as a web application as defined by the Java Servlet 2.2 specification, consisting of web pages (HTML), Java server pages (JSP), and Java beans. A web application can be easily packaged and deployed as a Web application ARchive (WAR) file similar to a Java ARchive file containing Java classes. The GPDK Java beans derive most of their functionality from the Globus Java Commodity Grid (CoG) toolkit. CoG provides a Globus API in pure Java including the GSI using the IAIK Java SSL libraries to delegate credentials. The CoG kit provides API's for submitting jobs to Globus gatekeepers, transferring files using GSIFTP implemented in Java and
querying LDAP servers using the Java Naming and Directory Interface (JNDI). GPDK Java beans merely present an easier interface for web developers to use the CoG kit when developing portal server pages.
Grid Service Beans: GPDK Java Beans are grouped into the following five categories, discussed below: Security, User Profiles, Job Submission, File Transfer and Information Services. Security: The sole security bean, MyproxyBean, is responsible for obtaining a delegated credential from a valid My proxy server [8]. The MyproxyBean has a few simple methods for setting the username, password, and designated lifetime of the proxy on the web server. In addition, the MyproxyBean also allows delegated credentials to be uploaded securely to the web server.
User Profiles: User profiles are controlled by three User Beans: UserLoginBean,
UserAdminBean
and
the
UserProfileBean.
The
UserLoginBean provides an optional service to authorize users to a portal. Currently, it only sets a username and password and checks a password file on the webserver to validate access. The UserAdminBean provides methods for serializing a UserProfileBean and validating a user's profile that is password protected. In the future, the UserAdminBean will securely store user profiles to a remote database, LDAP or DBMS. The UserProfileBean maintains user information including preferences, credential information, submitted job history, computational resources etc. The UserProfileBean is generally instantiated with session scope to persist for the duration of the user's transactions on the portal. Job Submission: The JobBean is a very simple bean that contains all the necessary properties used in submitting a job including memory requirements, name of executble, arguments, number of processors, maximum wall clock or cpu time, queue to submit to, etc. A JobBean is passed to a JobSubmissionBean that is responsible for actually launching the job. Two
varieties
of
the
JobSubmissionBean
currently
exist.
The
GramSubmissionBean will submit a job to a Globus gatekeeper that can run either interactively or to a scheduling system if one exists. The GSISSHSubmissionBean is supported for hosts that have installed GSISSH and is used to submit interactive jobs. After a job is sumitted, a JobInfoBean can be retrieved that contains various submit information including timestamp of job submitted, a Job ID that can be used to identify an active job, the status of the job, job output, etc. The JobHistoryBean is intended to store multiple JobInfo beans providing a history of information from jobs that have been submitted and can be stored in the user's profile.
File Transfer: Currently, the ability to transfer files is provided by the FileTransferBean
interface.
Both
GSIFTPTranferBean
and
the
GSISCPTransferBean securely copy files from source to destination hosts using the user's delegated credential. The GSISCPTransferBean requires that GSISSH be deployed on machines to which file transfer via GSI enhanced scp is desired. The GSIFTPTransferBean implements a GSI enhanced FTP in pure Java and is also capable of third-party file transfers.
Information Services: The MDSQueryBean provides methods for querying an LDAP server by setting and retrieving object classes and attributes such as operating system type, memory, CPU load for various resources. Currently, the MDSQueryBean takes advantage of the Mozilla Directory SDK for communicating LDAP and creating an MDSPool which maintains a pool of open LDAP connections.
GridPort3 Development Kit:GridPort3 (GP3) is a toolbox that has a comprehensive set of capabilities for using distributed computing resources via a simple and consistent API for building Grid portals and applications. GridPort aggregates Grid services provided by other Grid software, such as Globus and the Network Weather Service, and adds additional Grid services
that make using Grid resources easier and more effective [14]. GridPort eliminates the need for developers to learn the APIs of each of the underlying Grid technologies and services. Figure 1 represents the role of GP3 as middleware between interfaces and low-level Grid applications.
Figure 3.2-GridPort layer diagram [14] GridPortfunctionality: GridPort provides both informational and interactive services for portals and applications. It uses informational services to supply Grid-related data gathered from numerous Grid technologies about the number, status, and capabilities of the underlying resources. GridPort interactive services enable production computing capabilities such as file management, command execution, and job submission.
GridPortInformationRepository:
The
GridPort
Information
Repository
(GPIR) collects and archives both "static" and "dynamic" Grid data, and makes both current and historical data available to portals and applications via Web services. Static data, such as hostname and login data for virtual organizations (VO), are entered and updated via a GPIR Web administration client. Dynamic data from Grid resources, such as machine load or queue information, are updated continuously and automatically using information providers installed on each Grid resource. Data is retrieved from GPIR using the Query Web service. The Query Web service allows the user to query GPIR data based on VO or resource via Web services to allow universal querying from portals, applications, and more.
Figure 3.3-Grid Port 3 Architecture [14]
Authentication: Grid Port uses the Globus Grid Security Infrastructure (GSI) for single sign-on and authentication to remote hosts. Grid Port has two login mechanisms for user authentication: the Grid Port certificate repository and My Proxy. The first is a certificate and key repository that makes it simple for users to maintain and create an account. A certificate and key pair maps to a Grid Port user name and pass phrase [14]. The second method, My Proxy login, is accomplished by supplying Grid Port with a My Proxy host, username, and pass phrase with which Grid Port can delegate credentials from My Proxy. Once a user logs in to Grid Port via My Proxy or the repository, a valid proxy is created to execute tasks on behalf of the user. At this point, Grid Port creates a session for the user; the session maintains the user’s state and is valid until the user logs out.
FileManagement:
Grid Port’s file management functionality enables
execution of file-related tasks on the underlying Grid systems. File management allows users to execute three main tasks: upload a file from a
local system to any remote system, download a file from a remote system to a user’s local system, and transfer files between remote systems. File management operations require GridFTP to be operational on the remote server.
JobManagement: Grid Port provides several capabilities for job management. There are two forms of job execution: batch and interactive. Interactive processes, called command executions in Grid Port, submit commands to remote systems and provide immediate feedback. Grid Port has two methods for batch job submission -- via submission directly to the local queuing system on a chosen resource, or via Community Scheduling Framework (CSF). CSF, developed by Platform Computing, allows job submission to any available resource across the Grid that has a resource management (RM) adapter installed.
JobSequencer: Job Sequencer supports the execution of linear sequences of tasks that would otherwise be performed individually, which enables predefined workflows to be executed. The sequences are described in the form of an XML document stored in GPIR. Sequence steps can consist of file transfers and job submissions. The status information for each step in the sequence and the sequence as a whole can be stored. Upon submission, Grid Port returns a Sequence ID and then begins executing the sequence to completion or to error. Status information can be obtained at any time from GPIR with the Sequence ID.
Implementation: GridPort 3.0 is implemented as a J2EE Web application, as shown in Figure 2. It is a series of Plain Old Java Objects (POJOs) that are deployed to the Web container of JBoss and can be accessed in the ways shown in the client layer above it. The first approach is directly via Java API calls made by other objects in the container, such as portlets. The other mechanism is via Web service calls, such as those issued by GPIR providers.
The GPIR Query and Ingester services allow reads and writes from the GPIR data store, while the Job Sequencer service allows interaction with the interactive services. The POJOs make extensive use of the Spring J2EE framework in support of JDBC abstraction, transaction management, application configuration, and UI building. Future development of non-Web clients will make use of the Web services interface for remote access. Grid Port also uses Hibernate for object/relational mapping. Hibernate uses a high-performance object/relational mapping approach that integrates closely with the Spring framework. Hibernate delivers a high-performance, opensource persistence framework that can greatly reduce the amount of time and effort needed to code, test, and deploy applications. Hibernate is used to "automate" the mapping of relational tables to their corresponding objects. Because of the smaller footprint it creates within the code, it makes the code more maintainable. Finally, the GPIR Administration Client is implemented as a standard JSP Web application using the Spring MVC implementation for the presentation layer.
Few of the basic comparison between GPDK and GridPort. Grid Portals are Web servers that allow user to gain access to Grid resources “behind” the portal. A Web service is a network accessible interface to application functionality. It is built using standard Internet technologies. In this chapter we have studied and analyze the following existing Grid portals: ¾ Grid Portal Development Kit (GPDK) ¾ GrridPort
The Grid Portal Development Kit (GPDK) is designed to provide access to Grid services by using Java Server Pages (JSP) and Java Beans using Tomcat. The GPDK Java beans derive most of their functionality from the Globus Java Commodity Grid (CoG) toolkit. The GPDK Java Beans are grouped into the following five categories: Security, User Profiles, Job Submission, File Transfer and Information Services.
The Grid Portal Toolkit (GridPort) is a collection of technologies designed to aid in the development of science portals on computational Grids. GridPort is based on advanced web, security and metacomputing technologies such as Globus to provide secure, interactive services. The web pages and data are built from server-side Perl/CGI scripts, and simple HTML/JavaScript on the client side.
In this chapter we have discussed how the given portals are classified into different categories and on the basis of these categories we have explained the nature of the portals and different standards of the portals and comparison between existing standards. In the next chapter the development aspects of portals, basic requirements for the development of on ideal portal have been discussed.
CHAPTER 4
DEVELOPMENT ASPECT OF PORTALS 4.1 DESIGN APPROACH FOR THE GRID PORTAL
Portals provide convenient interfacing for a scientific domain or a particular problem strategy. Portal provides the users with tools or resources to solve problems of a particular domain and make the access to these resources web enabled. The Grid Portals act as a web enabled gateway to the Grid [13]. They provide the user with the facility to access the software, hardware, and other resources specific to their problem domain and that too through a single point of access. They assist the user in making better scheduling decisions. Many Grid portals have been developed as part of projects utilizing the Grid services. These use different technologies, but share the common goal of providing the user an easy and transparent access to the Grid resources. Before developing a Portal for any environment it should be determined that which customer group will be using the portal [18]. The customers can be categorized into three groups: •
•
1RYLFHXVHUV&DVXDORUQRYLFHXVHUVZKRXVHUHDGLO\DYDLODEOHVROXWLRQWRSUREOHPV
([SHUWXVHUV8VHUVEHORQJLQJWRWKHGRPDLQIRUZKLFKWKHSRUWDOKDVEHHQGHYHORSHG
6XFKXVHUVPD\HQKDQFHWKHSRUWDOIXQFWLRQDOLW\DQGPD\DOVRSURYLGHVWUDWHJLHVWREHXVHG E\WKHQRYLFHXVHUVRUWKHPVHOYHV
•
'HYHORSHU RI DSSOLFDWLRQV RU SUREOHP VROYLQJ HQYLURQPHQWV &XVWRPHUV SURYLGLQJ FRPSRQHQWVWREHXVHGE\H[SHUWRUQRYLFHXVHUV
In addition to the types of users, the probable usage modes should also be thought of. Like, it is required to distinguish between the ways-interactive or batch processing, in which jobs are being submitted to the resources systems by the users. The Portal should be able to support both fine-grained parallel programs (involving Message Passing) as well as coarse-grained parallel programs (involving dependencies between the submitted jobs).
Keeping the requirements and functions of the portal in mind, a layered approach, as shown in Figure 6 is suggested for its designing. The complete system of accessing the Grid resources through a portal can be considered to be a four-layer architecture or system.
)LJXUH$IRXUOD\HUHGV\VWHPRIDFFHVVLQJWKH*ULGUHVRXUFHVWKURXJKD3RUWDO>>@ The first layer is the user layer consisting of the end users workstation(s). It is from here that the user accesses the portal through the web browser. The second layer is a high-level API that acts as an interface between the portal (first and second layer) and the Grid services (third layer) [32]. This API is implemented using any of the many existing commodity technologies available. Many Commodity Grid Kits (CoG Kits) have been made available that act as bridges and provide compatibility between the commodity technologies and frameworks (used by application scientists) and Grid services. Since the Grid services are too complex to be directly used by computational scientists who are not experts in Grid programming, a higher level of abstraction is demanded that provide advanced Grid services within frameworks that may be used as
part of the problem solving process. The CoG Kits are available for technologies such as JAVA, Python, Perl, .NET, JXTA, CORBA and help in incorporating Grid services into these technologies [33]. Depending upon which technology is being used in the first layer, the corresponding CoG Kit can be used in the second layer [20]. This high-level API should be versatile, yet easy enough so that a wide range of applications can make use of it. The third layer is the layer providing the various Grid services such as authentication, remote access to computers, resource management, and infrastructure discovery. Many projects have developed middlewares (softwares providing the Grid services) that enable the setting up of Grids by providing the various Grid services. Some examples of such middlewares are- Globus, Legion, Condor, Avanki. Out of these Globus (developed as part of the Globus project) is the most notable and widely used middleware. Some of the Grid services that it provides are [18]
GSI (Grid Security Infrastructure): authentication and authorization services. GRAM (Grid Resource Access and Management): allocation of computational resources (job submission) and monitoring and controlling computation (job monitoring) on those resources. MDS (Meta Directory Service): information services that enables user to get information about state and structure of Grid resources and services.
The fourth layer is the Grid itself, that is the layer consisting of the physical resources (such as supercomputers, storage servers, HPC) forming the Grid. Thus, the first and second layers combined form the Portal. The Portal developer needs to provide an implementation for these two layers so that a proper interface for the Grid services is establish.
4.2 GRID SERVICES The Grid Portal provides an interface for the Grid users through which they access the various services provided by the Grid. In terms of Grid paradigm services are
platform independent software components that are present at the various layers of the Grid architecture. These services are registered with the Grid services providers who make these services available to the Grid users. The various services provided by the computing environment can be categorized as follows [1] Grid Security Management Services Grid Information Management Services Grid Data Management Services Grid Resource Management Services
•
Grid Security Management Services: Security is at the heart of the Grid and plays a key role in the Grid paradigm. Since the Grid deals with heterogeneous and distributed resources that belong to multiple administrative domains, security is an aspect that needs special attention. The concepts used to enable secure transactions are
Authentication- Authentication is the process of verifying the identity of any user. But in the case of the Grid, in addition to the users the resources as well as the services are also to be verified. Thus the authentication methods for a Grid environment involve: ¾ Single sign-on- A Grid as we know consists of a large number of resources. Also, a user may at times wish/ require using multiple resources for a single job application. For such cases a single sign-on facility must exist. Single sign-on means that a user logs in once and can thereafter use all the resources he/ she are authorized to use. The user need not authenticate separately for every resource in the Grid that he/ she is authorized to use. ¾ Delegation- Delegation refers to the ability or process of handing over the rights from one entity to another. The programs should be
developed and deployed in a manner that enable it to run on the users behalf once the user has logged in into the Grid environment. This means that once the user initiates his/ her program, the program should thereafter be capable of accessing other resources on which the user is authorized. Also the programs if required should be endowed with the capability of delegating their rights or work to other subsets or programs. On similar lines the Grid resources should also have the capability of delegating their work (either in parts or entirely) to other resources but this delegation must be designed and deployed in a restricted fashion so as to minimize the chances of risk and misuse. ¾ User-based trust relationship- When a user enters the Grid, he/ she becomes eligible to use the multiple resources present in the Grid. These resources have different configurations and also belong to different service providers. Say we have two service providers A and B. A Grid user has authenticated himself/ herself to use the resources of A and B. Now if he/ she want to use the resources of both sides simultaneously or in collaboration with each other then this single sign-on to the Grid must help him/ her in doing so. The peer Grid service providers must carry out the work on a trust relationship and should not create any security hassle. If a user can work on site A and site B then he/ she should be able to carry out work on the resources of both A and B together.
Authorization- Authorization process (es) helps decide which user has the right of using which resource or performing which action. Like a user authorized only for a particular resource can use that resource. Authorization decides the criteria for the verification of the actions a user can perform, whereas authentication decides the criteria for entry into the Grid environment. In the Grid paradigm provision for ‘Community Authorization’ should also exist. Community authorization means authorizing a group of
users. Since maintaining and tracking individual records may at times become cumbersome, such a measure should be incorporated.
Encryption- Encryption is the method used to maintain confidentiality of important messages. It is a measure used to increase the amount of secrecy by transmitting confidential or private messages between peers. Encrypting the message reduces the chances of leakage and misuse.
Non-repudiation- It is the process of verifying the integrity of the message received. It is a mechanism to check whether or not the received message is the same as the sent message. Changes in the received message can either be accidental or intentional. •
Grid Information Management Services: Information Management Services deal with the creation and maintenance of information bases about the Grid environment. The information stored is about users as well as resources. The information bases or directories (as they are commonly known) assist in the working and maintenance of the Grid environment. Resource information directories help in suitable resource allocation and management and user information directories help in the functioning of the Grid. These directories can either be centralized or distributed. The directories should be flexible, dynamic and easily adaptable to the changes in the Grid environment. If the information directories are distributed or decentralized, then special care should be taken about the consistency and integrity of the stored information.
•
*ULG'DWD0DQDJHPHQW 6HUYLFHV*ULGHQYLURQPHQWLVXVHG IRUERWKFRPSXWHLQWHQVLYH DSSOLFDWLRQVDVZHOODVGDWDLQWHQVLYHDSSOLFDWLRQV'DWDLQWHQVLYHDSSOLFDWLRQVUHTXLUHODUJH YROXPHVRIJHRJUDSKLFDOO\GLVWULEXWHGGDWD,QRUGHUWRXVHWKHGDWDHLWKHUWKHGDWDQHHGV
WREHWUDQVIHUUHGIURPLWVORFDWLRQRIVWRUDJHWRWKHORFDWLRQRIWKHDSSOLFDWLRQRUSURFHVV
UHTXLULQJ LW RU WKH FDOFXODWLRQV FDQ EH SHUIRUPHG RQ WKH VHUYHU KRXVLQJ WKH GDWD E\
WUDQVIHUULQJWKHFDOFXODWLRQFRGH,QFDVHWKHGDWDQHHGVWREHWUDQVIHUUHGWRWKHXVHU·VVLWH
GDWD UHSOLFDV FDQ EH FUHDWHG %XW WKHQ D PHFKDQLVP WR PDLQWDLQ WKH LQWHJULW\ DQG FRQVLVWHQF\ RI WKH UHSOLFDV VKRXOG DOVR EH GHYLVHG $OVR WR OLPLW WKH DPRXQW RI GDWD
SUHVHQWRQWKH*ULGWKHGDWDFDQEHDXJPHQWHGZLWKDOLIHWLPHIDFWRU,QVLWXDWLRQVZKHUH
FUHDWLRQ RI GDWD UHTXLUHV OHVVHU HIIRUWV WKDQ UHSOLFDWLRQ WKH LQIRUPDWLRQ DERXW KRZ WR
•
JHQHUDWHWKHGDWDVKRXOGEHWUDQVIHUUHGWRWKHXVHUV
Grid Resource Management Services: Resource Management Services deal with the access, allocation and management of resources and the execution of tasks. The resource directories are used to retrieve the information about the state, configuration, and status of the Grid resources. The Grid provides its users with a working environment possessing enormous computing power and large volumes of data and comprising of a large number of systems or resources having varied configurations and ranging from standalone workstations to supercomputers, from a single database to data servers, etc. The users interact with the Grid environment through the Grid portal (user interface). The user submits his/ her request through the portal, which then gets processed and the result is returned to the user. Every user wants his/ her request to get executed on the best available resource. This means that the selection and allocation of a resource plays an important part in the complete execution process. Not every user has adequate knowledge about the state and structure of the resources comprising the Grid. Thus, a separate entity is needed to perform the resource management tasks. In the Grid paradigm a ‘Resource Broker’ performs these tasks of resource allocation and management. The user submits his/ her requirements and constraints along with the job to the broker. A single resource broker may either handle requests made by a single user (this means that each Grid user has a dedicated broker) or one resource broker may handle requests made by multiple users (this means that many Grid users share a common broker). The broker then searches for a resource that matches the user requirements and is currently available for use. For searching the resource, the broker consults the resources directory and finds out the resources that satisfy the request requirements. The
directory contains information like the resource identity on the Grid, its location, its specifications, etc. The broker shortlists those resources from the complete list of resources available on the Grid that match the user request criteria. The broker then communicates with the short listed resources and tries negotiating the user’s terms with the resource’s parameters. The negotiating factors may be the cost of execution, cost for memory used, availability, scheduling criteria (preemptive or nonpreemptive), etc. Once the broker identifies the best suitable resource, it submits the user’s request onto the resource. When the execution completes the broker gathers the result(s) from the resource and transmits it/ them back to the user. Scheduling of resources is an important part of resource allocation and management. Mechanisms to maintain the QoS parameters and to avoid situations like deadlock and avoidance need to be devised. Resource Management service plays an important role in the complete Grid paradigm. For both compute-intensive as well as data-intensive applications, the identification of the proper resource (housing the needed computational power or data) is very critical. Most of the existing Grid middleware have implemented this feature as a separate service. Globus toolkit, for example, provides a service known as GRAM (Grid Resource Access and Management) that works in conjunction with other services like GridFTP (Grid File Transfer Protocol) for transferring of job or request files, GSI (Grid Security Infrastructure) for checking the authentication and authorization factors, MDS (Meta Directory Service) for gathering information related to the resources that are part of the Grid.
4.3 BASIC REQUIREMENTS FOR THE DEVELOPMENT OF GRID PORTALS Grid-enabled portal had several basic requirements. Primarily its function is to allow users to easily run applications over Grid resources. A second, key, goal of this
project is to not only create a functional portal, but also one that advances the Grid computing effort by creating reusable components that integrate existing technologies. To elucidate these points, we describe few general requirements that a user would take when developing a portal these requirement for the development of the portal there is general Grid portal design that will meet all requirements for the portal like [30]
•
Flexibility- to support the many different needs and requirements of user the Portal should be open and able to tailor or add new functionality to its existent base.
•
User Interface-Like all applications, it is proven time and again that ease of use drives usage of applications. A highly user centric user interface will be key to Grid computing users. As such, a portal with wizards or toolkits that enable rapid and ease of changing layouts, look-and-feel or output are important.
•
Content Aggregation-Content still remains a key component in a portal. In any project or community there will always exist a requirement to store,[30] combine, index, and provide searching capabilities for or otherwise to aggregate content from various existing or new sources.
•
Applications Aggregation-Grid applications should not be the only application on a Grid portal. There exists a myriad of applications that are useful or essential for a user besides those that uses the Grid. Portal needs to aggregate such applications.
•
Collaboration-One of the portal’s main functions is to enable collaboration. In projects or communities of users, tools such as discussion forums, online chat, instant messaging, video conferencing and document management are the basic necessities to provide for a community of Grid application users.
Some major requirements for a Portal that should be kept in mind while developing a portal that is of primary concern are as follows:
•
Security- In the development of the Grid portal security is an important concern. Ideally users' authentication credentials will not be stored on disk of the web server or on a very public machine but rather on a different machine with extra security to protect usernames and passwords [30]. Our portal tries to strike a balance by having the users delegate their credentials a single time. Subsequent uses of the portal simply require a password to activate the credentials. Such a system allows users to connect to the portal from any machine with a web browser without having their credentials stored on their local workstation. No other software should be required.
•
Authentication- Using a standard web-browser, the user logs in to the portal with a username and password. New users can request an account by contacting the site's administrator and presenting valid authentication credential(s).
•
Job selection and configuration-The portal then presents options for a particular application to be run. The portal creates a number of separate jobs, each with a different set of initial conditions.
•
Resources Selection and Job Execution-The user may want to specify a set of resources he/she is interested in utilizing, such as a particular data resource to access. Additionally he/she may specify a deadline by which the results of the execution are required. The portal backend then creates the individual jobs from the user description and maps them to resources in such a way that the user's deadline is met. It submits the job(s) for processing and monitors system loads in order to efficiently utilize resources and to ensure that the job execution happens within the allocated time.
•
Output Visualization-Visualization of simulation and analysis data is of most interest to the end-users. The Portal should be customizable to accommodate these varying needs.
In this chapter the development aspects of the portal that should be taken care while trying to develop a portal. Here the basic requirements for the development of an ideal portal have also been discussed. In this chapter has been discussing the Grid services like Grid security, Grid information management, Grid resource Management, Grid data management. In the next chapter we are going to discuss the design and implementation issues for the TIET Grid Portal.
CHAPTER 5
DESIGN AND IMPLEMENTATION OF TIET GRID PORTAL 5.1 DESIGN OF TIET GRID PORTAL Grid Portal named ‘TIET GRID PORTAL’ has been designed and developed as part of the thesis work.
Features of TIET Grid Portal With the advent of Grid Computing, the scope of Distributed Computing has increased manifolds. Grid paradigm has given the users a computing environment that facilitates the sharing of geographically distributed hardware, software, data, and other resources. Such an environment is very useful for carrying out compute-intensive work (both resource-intensive as well as data-intensive) in a collaborative, integrated, and dynamic manner. The TIET Grid Portal serves as an entry point to the Grid environment on whose application layer it is executing. The TIET Grid Portal provides the users with an easy, user-friendly and transparent access to the resources that are part of the underlying Grid. The TIET Grid Portal serves two types of users- Grid Users (users who are Already registered with the Grid, i.e. they have an account on the Grid, and want to get their job executed/ request processed on some resource in the Grid) and New Grid user (a user who is new to the Grid and want to register his/her resources or may be want to execute the job).
Brief Description of TIET Grid Portal TIET access login Portal: This portal server as the entry point for the user on the Grid. This portal have two option one for those user who are already registered to the grid
and other are those who are new user on the grid. Through this portal user have to give his/her grid identification no and grid identification password that is unique for every user. If the user is new user then user will get its grid identification id and password that will ease them to access grid resources.
TIET Account Manager Portal: After getting user identification id and password, user have to fill his/her personal information to maintain the accounts like username this username is different then the grid identification id its like u are login to the grid as a root or something else , family name is in which category user is logined to the grid it is either as a user or administrator , name of the organinisation from which you belong, email id, old password, new password this information will be used to manage the information of current grid user .
TIET Credential Management Portal: The grid will provide a facility to submit its credentials once and after that he can access any grid resources without any verification for each resource. This portal will help in the user credential management like the user want to submit or retrieve or editor delete the credentials, whether user want to check the status of the credentials or time at which the certificates are issued and for how much time it will be activated. All the certificates prove the user identity that is also unique to every user.
TIET Resource Directory Portal: Resource directory portal will help to manage the information about the resources like the each resource have its unique resource identification name that will differentiate it from other available resources. This resource directory contains the operating system that support the resource database, processor, language, that it will support, and the fully qualified domain name and location of the resources. This portal will help to manage the resource information.
TIET Current Resource Status Portal: Current resource status portal will also manage all the current information about the particular resource like operating system
that this particular resource supports and processor that resource have and programming language it supports and fully qualified domain name of the resource and location of the resource and other information similar to resource directory portal but for the particular resource.
TIET Job Submission Portal: Job submission portal will help to submit the job to various grid resources to execute in a short time or to delete the job from the job queue, copy the job from the existing job list and cancel the job. All these activities are performed by the job id which is given to the each job when it is submitted to the grid .the job description portal contain the job description means what the basic function that job will going to perform so the resources will be allocated to the job according to the job requirement, job status, job type, job resources, job schedule, job metrics and job profile of the job. This portal will maintain the required attributes of particular job.
TIET file Browse Portal: This file browse portal will help to browse the file or copy the file and move the file from one resource to another. File browser portal will also provide the facility to list the current available files, to rename the file, delete the file from the source and make the directory etc.means this portal will help to browse the files.
TIET Job Status Portal: This job status portal will help to give the information about the memory needed by the executing job and the processor time required by the job and the functionality provided by the job and the operating system that the job will support.
TIET Result Portal: This result portal will help to show the result of the executed job in a user-friendly manner. This will also show the time taken to execute the job and cost incurred to execute the job.
Here the brief description about the working of the developed portal but to develop this portal we have to set up a particular Grid environment. In this work the portal with the help of a particular lab Grid environment with the help of Globus Tool kit
for windows 2000 have been developed. To install this tool kit we have to follow these give installation steps.
INSTALLATION OF GLOBUS TOOL KIT For the development of the Grid portals the initial requirement is setup of lab Grid environment with the help of Globus Grid GT3 install/setup for windows 2000 [24].
Prerequisites: •
GLOBUS Directory Structure and Environment Variables Setup
System State Changes: •
•
•
Set Environment Variables o
GLOBUS_ROOT = d:\Grid
o
ANT_HOME = %GLOBUS_ROOT%\apache-ant-1.5.4
o
JAVA_HOME=d:\j2sdk1.4.2_02
o
GLOBUS_LOCATION=%GLOBUS_ROOT%\ogsa-3.0.2
o
CATALINA_HOME=%GLOBUS_ROOT%\Tomcat4.1
Add to PATH Environment Variable o
%JAVA_HOME%\bin
o
%ANT_HOME%\bin
o
%GLOBUS_LOCATION%\bin
o
%GLOBUS_ROOT\bin
Create GLOBUS Sandbox Directory Structure
o
Create GLOBUS_ROOT directory
o
Create GLOBUS_ROOT\download directory
o
Create GLOBUS_ROOT\bin directory
For the set up of Grid environment we have some of the prerequisites and some system level changes that must have to take place for the setup these system level changes are like setup of environment variables and add some path environment variable and creation of globus directory. For these changes we have to follow the following path.
Figure 5.1- Globus Grid GT3 Install [24] Start---> Control environment variables
panel---> system --->
advanced
features
--->
After setting up the environment variables next step is to install the following software’s in the same sequence as it is given in the figure. After setting up this environment we are at the stage to develop the portals for the TIET Grid, to access the Grid through Portals the Grid user needs to have an account on that Grid and has to donate at least one of his/ her resource to the Grid.
If a user does not fulfill either/ both of these requirements he/ she are not allowed access to the Grid services. Only after acquiring an account and registering at least one of his/ her resource with the Grid environment, a user becomes liable to use the Grid services. The few basic steps to acquire an account, register your resource, and then submit a job for execution using the TIET Grid Portal is as follows:
¾ Load the TIET Grid Portal.
¾ To register as a user with the Grid and obtain an account click on User Registration. ¾ To Access the Grid resources and to enter into the Grid, user has to enter its Grid Identification Name (GIN) or user id and Grid Identification Password (GIP) or password. ¾ If the user is already registered to Grid then he can be directly login by its unique Grid identification id and password otherwise user have to register to the Grid and he will be assigned a unique Grid identification id and password. ¾ In the next step u have to fill up your resource details in the provided form.
¾ If the User wants to execute a job the he will open a portal that will take the job requirement from the user. ¾ From the Grid we can get the information about the current registered resources so that we can match our job resource requirement with the available resources.
¾ After submitting the job we can easily watch the current status of the job through the job status portal after giving the unique job id that is provided to each job when the user submits the job. ¾ At the end we can easily get the result of the job. It can be easily show the steps how to server the user by grid portals with the help of this Control Flow Diagram shown below 'R\RX
KDYHDQ
DFFRX QW"
Create an account No
Get User ID and Password
yes Login
Resource Registration
Submit resource specificatio
Job Execution
Submit job requiremen ts
$FWLYLW\WR SHUIRUP"
Resource ,VD
No
UHVRXUFH DYDLODEOH"
RIN allotted to
Yes
Get details of Yes :DQWWR
all resource
UHJLVWHU UHVRXUFH"
No :DQWWR VXEPLWMRE"
No Yes
RIN: Resource Identification Name ___ For processes ___ For control flow
Enter job file location Job executed on chosen resource
___ For input/ output
Change job requireme
Provide results to user Yes
No :DQWWR
Logout ORJRXW"
Screen Shots of TIET Grid Portal
Screen # 1
Screen # 2
Screen # 3
Screen # 4
Screen # 5
Screen # 6
Screen # 7
Screen # 8
Screen # 9
Screen # 10
Screen # 11
Screen # 12
Screen # 13
CHAPTER 6
CONCLUSION AND FUTURE SCOPE 6.1 CONCLUSION “Anyone, anywhere, anytime, any device, any data, connected to the Grid and accessed through portals” On the basis of literature survey on Grid Computing and existing Grid Portals; the developmental work carried out to create a Grid environment; design and development of Grid Portal, it can be concluded that D 7KHIXWXUHRIGLVWULEXWHGFRPSXWLQJEHORQJVWRWKH*ULGHQYLURQPHQWWKDWZLOOOHDGWRWKH HIIHFWLYHXWLOL]DWLRQRIDOOH[LVWLQJUHVRXUFHVDWWKHJOREDOOHYHO
E 7KHJHRJUDSKLFDOERXQGDULHVRIRUJDQL]DWLRQVZRXOGQRORQJHUOLPLWWKHJOREDOXWLOL]DWLRQ RIFRPSXWHUUHVRXUFHVXVLQJ*ULGV
F 7KHXVHUVZKRGRQRWKDYHHQRXJKUHVRXUFHVIRUH[HFXWLQJWKHLUDSSOLFDWLRQVLQWKHLURZQ RUJDQL]DWLRQVFDQJUHDWO\EHQHILWE\EHFRPLQJDSDUWLFLSDWLQJPHPEHURIWKH*ULG
G 7KH7,(7*ULG3RUWDOGHYHORSHGIRUDQ\JHQHULF*ULGHQYLURQPHQW
¾ $OORZV XVHUV ZKR PD\ QRW EH DZDUH RI WKH LQWULFDWH GHWDLOV DQG ZRUNLQJ RI WKH *ULGWRXVHWKH*ULGUHVRXUFHVHIIHFWLYHO\DQGLQDXVHUIULHQGO\ZD\
¾ 3URYLGHVLWVXVHU·VHDV\PHFKDQLVPVWRDFTXLUHDXVHUDFFRXQWRQWKH*ULGUHJLVWHU UHVRXUFHV ZLWKWKH*ULGDQGVXEPLWMREV RQWKH*ULGUHVRXUFHV
¾ $VVLVWV *ULG $GPLQLVWUDWRUV LQ SHUIRUPLQJ DGPLQLVWUDWLYH WDVNV OLNH DGGLWLRQ
GHOHWLRQ PRGLILFDWLRQ RI UHVRXUFHV DQG RU XVHU DFFRXQWV DQG YLHZLQJ RI GLUHFWRULHVDQGVWDWXVRI*ULGUHVRXUFHV
H :LWK WKH HPHUJHQFH RI QHZ SRUWDOV GHYHORSHG RQ WKH OLQHV RI 7,(7 *ULG 3RUWDO WKH LQWHUDFWLRQVRIWKHXVHUVZLWKWKH*ULGHQYLURQPHQWZRXOGLQFUHDVH7KLVZLOOUHVXOWLQWKH HIIHFWLYHXWLOL]DWLRQRI*ULGUHVRXUFHVDQGLQFUHDVHLQWKHQXPEHURI*ULGXVHUV
I :LWKWKHKHOSRI*OREXVWRRONLWIRUZLQGRZVSODWIRUPDQG-DYDZHFDQGHYHORSD SRUWDOWKDWZLOOIXOILOODOOWKHUHTXLUHPHQWWKDWDUHJLYHQIRUDQLGHDOSRUWDO
J 7,(7 *ULG SRUWDOLVGHYHORSHGLQWKLVHQYLURQPHQW ZKLFK IROORZWKHJLYHQVWDQGDUGVDQG IXOILOOWKHUHTXLUHPHQWVRIEHLQJXVHUIULHQGO\DQGWUDQVSDUHQWWR*ULG
Thus we can conclude that a framework for generic Grid Portal has been designed and implemented with varied range of Grid users in mind.
6.2 FUTURE SCOPE ,QHYDOXDWLQJWKHGHVLJQRIWKH7,(7*ULG3RUWDOZHPXVWEHDULQPLQGWKDWWKHVWDWH
RIWKHDUWRI*ULGSRUWDOFRPSXWLQJLVTXLFNO\HYROYLQJ,QWKHODVW\HDUWKHUHDUHFHUWDLQNH\ WHFKQRORJLHV WKDW KDYH JDLQHG IDYRU ZLWKLQ DFDGHPLF DQG HQWHUSULVH FRPSXWLQJ ,W LV ODUJHO\ DFFHSWHGLQERWKFRPPXQLWLHVWKDW:HEVHUYLFHVDQGWKHH[WHQVLRQVLQWURGXFHGLQWKH2SHQ
*ULG 6HUYLFHV $UFKLWHFWXUH DQG WKH 3RUWOHW -DYD 6SHFLILFDWLRQ 5HTXHVW -65 DUH IUDPHZRUNV
WKDW ZLOO KDYH WKH PRVW LPSDFW RQ *ULG SRUWDO FRPSXWLQJ WRGD\ $OUHDG\ WKHUH H[LVW VRPH LPSOHPHQWDWLRQV IRU ERWK IUDPHZRUNV 7KH 3RUWOHW 6SHFLILFDWLRQ KDV EHFRPH LQFUHDVLQJO\
LPSRUWDQWDQGXVHIXODVDZD\WRVHSDUDWHYLVXDOLQWHUIDFHVWRVHUYLFHVIURPWKHSUHVHQWDWLRQ
DQG GHVFULSWLRQ RI WKH VHUYLFHV 7KH PRUH ZRUN FDQ EH GRQH IRU WKH GHYHORSPHQW RI *ULG
SRUWDOWKDWZLOOFRQIRUPVWRDOOWKHSRUWOHWVWDQGDUGVDQGKHOSLQGHYHORSLQJWKHSRUWDOV'HVLJQ
DQG GHYHORSPHQW GHWDLOV RI 7,(7 *ULG 3RUWDO FDQ VHUYH DV D XVHUIULHQGO\ WUDQVSDUHQW DQG UHXVDEOHHQYLURQPHQWWRIDFLOLWDWHD*ULG8VHUWRKDUQHVVWKHWUHPHQGRXVSRZHULQKHUHQWLQ WKHDUFKLWHFWXUHRIDQ\JHQHULF*ULG
REFERENCES >@)RVWHU,.HVVHOPDQ&1LFN-7XHFNH67KH3K\VLRORJ\RIWKH*ULG$Q2SHQ *ULG6HUYLFHV$UFKLWHFWXUHIRU'LVWULEXWHG6\VWHPV,QWHJUDWLRQ2SHQ*ULG6HUYLFH ,QIUDVWUXFWXUH:**OREDO*ULG)RUXP$FFHVVHGIURP KWWSZZZJOREXVRUJUHVHDUFKSDSHUVKWPO >@,DQ)RVWHUWKH*ULG$1HZ,QIUDVWUXFWXUHIRU &HQWXU\6FLHQFH3K\VLFV7RGD\ VW
$FFHVVHGIURPZZZDLSRUJSWYROLVVSKWPO)HEUXDU\ [3] Cactus Grid Computational Toolkit.acessed from http://www.cactuscode.org/ [4] Jlab Lattice Portal.acessed from http://lqcd.jlab.org/ [5] Marlon.E.Pierce, Choonhan Youn, and Geoffrey C. Fox, The Gateway Computational Web Portal, Concurrency and Computation: Practice and Experience Vol.14, Grid Computing environments Special Issue 13-14, 2002 [6] J. Novotny, The Grid Portal Development Kit, Concurrency and Computation: Practice and Experience Vol.14, Grid Computing environments Special Issue 1314,2002 [7] Cog Kit for Grid Environment.acessed from www.globus.org/cog/ >@-DVRQ1RYRWQ\7KH*ULG3RUWDO'HYHORSPHQW.LW/DZUHQFH%HUNHOH\1DWLRQDO /DERUDWRU\ZZZFRJNLWVRUJSDSHUVFSDSHUSGI
>@)RVWHU,.HVVHOPDQ&1LFN-7XHFNH67KH$QWDRP\RIWKH*ULG(QDEOLQJ 6FDODEOH9LUWXDO2UJDQL]DWLRQ$FFHVVHGIURP KWWSZZZPQODEFVGHSDXOHGXVHPLQDUIDOO*ULG$QDWRP\SGI [10] Brett Beeson1, Steve Melnikoff , Srikumar Venugopal , David G. Barnes. : A Portal for Grid Enabled Physics. Accessed from KWWSZZZDXVYRRUJSDSHUWUDLOSDSHUVEHHVRQJULGSGI [11] Chen Xin, Yang Shoubao, Zhao XiaoChun, Wang Yufeng, Shan JiuLong portlet Research in Grid Environment accessed from http://www.chinagrid.net/grid/paperppt/USTC/Portlet%20Research%20in%20Gri d%20Environment.pdf [12] Ian Foster, What is the Grid? A Three Point Checklist, accessed from http://www-fp.mcs.anl.gov/~foster/Articles/WhatIsTheGrid.pdf
[13] White Paper on “Grid Engine Portal “, 2002 Sun micro Systems Inc. accessed from KWWSJULGHQJLQHVXQVRXUFHQHWJHS*(3BZKLWHSDSHUSGI [14] Grid port3 development kit for the portals,accessed from http://www.edu?cc=&subject=Build grid portals with Grid Portal Toolkit 3.
[15] Rajkumar Buyya , Economic based Distributed Resources management and scheduling for grid computing, accessed from www.buyya.com/gridsim/ [16] J. Joseph, C. Fellenstein, “Grid Computing”, Edition 2004.
[17] Jennifer M. Schopf, “Grids: The Top Ten Questions”, Mathematics and Computer Science Division, Argonne National Lab, Department of Computer Science, Northwestern University. >@*UHJRUYRQ/DV]HZVNL,DQ)RVWHU-DUHN*DZRU3HWHU/DQH1HOO5HKQ0LNH5XVVHOO
$UJRQQH1DWLRQDO /DERUDWRU\6RXWK&DVV$YHQXH$UJRQQH,/86$ 'HVLJQLQJ *ULGEDVHG 3UREOHP 6ROYLQJ (QYLURQPHQWV DQG 3RUWDOV ZZZ
XQL[PFVDQOJRYaODV]HZVNSDSHUVFRJSVHILQDOSGI
[19] The HPC grid Portal, accessed from, http://www.ecs.dl.ac.uk/techReports/portal_guide/portal_guide/node3/html.
[20] B. Saxena, “Grid Computing”, thesis submitted at Computer Science and Department, Thapar Institute of Engineering and technology. >@*UHJRUYRQ/DV]HZVNL$UJRQQH1DWLRQDO/DERUDWRU\*ULG&RPSXWLQJ(QDEOLQJD 9LVLRQIRU&ROODERUDWLYH5HVHDUFK3$5$/1&66SULQJHU9HUODJHUOLQ +HLGHOEHUJSS >@*UHJRUYRQ/DV]HZVNL,DQ)RVWHU-DUHN*DZRU3HWHU/DQH1HOO5HKQ0LNH 5XVVHOO$UJRQQH1DWLRQDO/DERUDWRU\6RXWK&DVV$YHQXH$UJRQQH,/ 86$'HVLJQLQJ*ULGEDVHG3UREOHP6ROYLQJ(QYLURQPHQWVDQG3RUWDOV ZZZXQL[PFVDQOJRYaODV]HZVNSDSHUVFRJSVHILQDOSGI >@,DQ.HOOH\-DVRQ1RYRWQ\0LFKDHO5XVVHOO2OLYHU:HKUHQV3RUWDO(YDOXDWLRQ DFFHVVHGIURPKWWSZZZJULGODERUJ5HVRXUFHV'HOLYHUDEOHV'SGI
[24] Globus Grid GT3 Install/setup on Windows:, accessed from http://www.bigdogsoftware.org [25] Anil Garg, “Data Grid”, thesis submitted at Computer Science and Department, Thapar Institute of Engineering and technology. >@7KH*OREXV3URMHFWDFFHVVHGIURPZZZJOREXVRUJ >7KH*OREDO*ULG)RUXP**) DFFHVVHGIURPZZZJULGIRUXPRUJ >@KWWSZZZHQWURSLDFRPSGI'&*ULG%URFKXUHSGI >@$OH[DQGHU5HLQHIHOG3RVLWLRQ3DSHUZZZHJULGRUJHFBLQLWLDWLYHVUHLQHIHOGKWPO [30] Dr. Thomas Choong, Enhancing the Collaborative Use of Grid Computing Application With a user-oriented Portal, accessed from http://www.ngp.org.sg/grid2004/papers/Choong%20Thomas_0140.pdf
PAPER COMMUNICATED [1]. Bhawna Bansal and Seema Bawa “ Design and Development of Grid Portal ” at Tencon’05, International Technical Conference sponsored by IEEE Region 10 to be held in Melbourne , Australia from November 21-24, 2005 .