DISTRIBUTED ENGINEERING ENVIRONMENT ... - Semantic Scholar

4 downloads 9109 Views 81KB Size Report
many areas (i.e. in electronic design automation), tool integration remains to ..... XML-Signature Syntax and Processing. http://www.w3c.org/TR/xmldsig-core/, ...
DISTRIBUTED ENGINEERING ENVIRONMENT FOR THE DESIGN OF ELECTRONIC SYSTEMS Tim Schattkowsky , Wolfgang Müller Paderborn University Fürstenallee 11 33102 Paderborn, Germany {Tim , Wolfgang}@c-lab.de Abstract. Computer supported collaborative work (CSCW) is currently of growing interest for application industrial context. Integrated workflow systems are available to allow the integration of globally distributed teams. However, in many areas (i.e. in electronic design automation), tool integration remains to be a critical issue since existing legacy tools have to be integrated into distributed workflows. By integrating tools based on the operational semantics, dynamic assignment and replacement of tools in the workflows becomes possible. We present a middleware for secure collaborative engineering that enables flexible tool management and overcomes existing networking problems through a peer-to-peer based network infrastructure.

1 Introduction Engineering collaboration gets its new global dimension with the omnipotent access to Internet. When establishing complex collaborative engineering environments for distributed design teams, resource management, integration and their efficient and secure interconnection still remain as major problems though several projects investigated different solutions [4]. As the complexity of the heterogeneous computer networks in the enterprises increases, the administration and integration of the huge numbers of various resources is currently one of the biggest challenges for system administrators. Tool management and integration as well as the secure transport of design data is of utmost importance when establishing complex collaborative engineering environments, which connect distributed design teams. Several approaches have been proposed to deal with those issues like the definition of standard languages for Tool integration like TES [1] and tool integration frameworks with workflow management like ASTAI® [9]. The IST project E-Colleg (IST-1999-11746) develops and applies middleware for such purpose. With the Tool Registration and Management Services (TRMS) [3], E-Colleg introduced an advanced platform for tool registration and management. In the context of that project, we have developed and implemented tool integration support and a framework of web services, i.e., ANTS (Advanced Network Transport Services), for peer-to-peerbased design data exchange and tool integration in order to securely overcome the most

significant bottlenecks in collaborative engineering environments like firewalls and remote tool access. The remainder of this paper is structured as follows. The next section discusses important aspects for tool integration. Section 3 introduces TRMS, its basic architecture, tool integration mechanisms, and the underlying ANTS framework for peer-to-peer-based web services. Section 4 closes with conclusions and a perspective to future work. 2 Background The support for dynamic tool management is crucial for creating a productive and costeffective collaborative environment. Dynamic tool management denotes the dynamic discovery and transparent invocation of a tool based on a semantic functional description of the tool’s behavior. This enables engineers to transparently use remote tools (i.e., costly simulation software that is used to test and verify their design) without being limited to a specific tool instance. Instead, the required tool is dynamically allocated and invoked. Figure 1 shows an architecture that enables dynamic tool management using a discovery mechanism similar to the basic principles of UDDI and JINI. In that architecture, tools have to be registered using a centralized lookup service that can be used to discover the tool. Once a client calls the Lookup Service to discover a particular type of tool, the Lookup Service will locate an appropriate available tool and return a tool reference. The client uses that reference to directly invoke the tool and to transfer the corresponding design data as tool input returning the output.

Figure 1: Dynamic Tool Management in a collaborative Environment

In that application, several problems rise during the installation of a distributed engineering environment when trying to interconnect applications and teams in different highly protected Intranets (i.e., connecting suppliers to enterprise internal workflows). However, the main problem, which comes up in industrial environments, is that different enterprises usually have different infrastructures and security policies by means of different firewalls with different configurations. Individual security policies often do not permit arbitrary data exchange and intentionally close communication ports for non-secure communication. Thus, a middleware for collaborative environments has to integrate abstraction mechanisms to transparently and to securely overcome such problems. When enterprise networks are protected by firewalls, clients are not permitted to access services hosted on machines located in a different enterprise network (see Figure 2). This is even usual when trying to interconnect between different subsidiaries of the same enterprises. Thus, it is important for a middleware for a collaborative engineering platform to overcome this situation without creating the need to restructure the existing enterprise network infrastructure. Furthermore, the existing security level of the network should not be undermined.

Figure 2: Firewall Problem

Finally, security is a crucial issue when transmitting design data over the Internet (and also even over Intranets). The data has to be encrypted and decrypted in order to preserve a high confidentiality of intellectual property.

3 Tool Registration and Management 3.1 Overview For advanced tool integration, the E-COLLEG has introduced TRMS (Tool Registration and Management services) [8] as a set of web services supporting dynamic management of distributed tools. TRMS is designed as an intranet-crossing, site-spanning middleware that enables collaborative engineering. TRMS consists of core services: TIS, GTLS, and LTCS (cf. Figure 3). These services are interconnected using the Advanced Network Transport Service (ANTS) peer-to-peer network, which is an integral part of the collaborative middleware. By using a supplementary FTP-like web service for data storage, the data sets, which are used during remote tool invocations, are transported using ANTS as well. The Tool Invocation Service (TIS) is a service local to each client that is called to transparently invoke dynamically discovered remote tools. By wrapping TIS functionality, i.e., as a command line tool, transparent dynamic tool invocation can be easily integrated into stand-alone clients or workflow management tools. The Global Tool Lookup Service (GTLS) is a single global tool registry that is responsible for assigning tools to incoming discovery requests from TIS instances.

Figure 3: TRMS Core Services

Once a TIS has successfully discovered the required tool for a specific task, it directly invokes the tool by calling a local resource. This is managed by the Local Tool Control Service (LTCS). The LTCS has to be deployed locally on the computers hosting the tools and is responsible for activating the tool for remote clients and passing parameters and output data between the tool and the calling TIS.

The integration of TRMS services with an existing workflow engine establishes a globally distributed collaborative environment for the design of electronic systems. This environment is using the existing network infrastructure. Thus, the solution overcomes important technical and organizational barriers for the use of distributed engineering in and between enterprises 3.2 XML-based Tool Integration TRMS applies XML for tool description. Such a description includes the description of a tool and the operations supported by this tool as well as the deployment. To enable dynamic tool integration, the operations supported by a tool have to be described in the terms semantically fixed contracts. Figure 4 shows the XML schema used for tool integration within TRMS in XMLSpy [1] notation.

Figure 4: Tool description schema

The schema defines tools by means of tasks and properties. A task is the semantic description of a specific operation, which can operate on a certain dataset (i.e., simulate a VHDL file). This description is independent from the actual tool. It describes only the desired functionality. A tool (i.e., Synopsis) is a component that supports one or more tasks. Instances of such a tool may be available on one or more host machines. The integration elements (host, tool, task, dataset) are described by sets of properties. A property is a named attribute with a value. It describes a feature or requirement of the integration element. The actual semantics of the property are defined externally. Using properties allows us to introduce a notion of compatibility between integration elements as described in [4]. Two integration elements are compatible, if all of their required features match. For example (see also Figure 5), two task descriptions match if all of their datasets have the same data formats. Thus, both should have set the same property value for the property indicating the data format.

Figure 5: XML task description example (VHDL simulation)

Different instances of this schema are employed in TRMS. A toolspace document description is used by the GTLS for the persistent storage of a system configuration. An XML task description is used in discovery requests from TIS to GTLS. The GTLS will match this task description with the task description of all currently registered tools to locate a compatible tool. The compatible task description for this tool also has to include an activation element describing the activation of the task for that particular tool.

Figure 6: Command line activation description

The activation element itself is an abstract description. Currently, we have defined the commandlineactivation element (see Figure 6) to replace activation for command linebased activation, which is sufficient for almost any EDA tool. The actual command line is

assembled from the content of the commandline element. The content of this element allows the construction of the command line in an HTML-like manner by inserting elements for the mapping of datasets to local files and optional text (data directly passed in the command line, i.e., switches) as XML tags into the command line text. Environment variables can also be defined, just like the execution directory and static result files, i.e., result files with a fixed file name. Furthermore, other activation mechanisms could be used as well by providing a sufficient description mechanism. This explicitly includes activation using component frameworks (i.e., COM, CORBA). The design of the XML documents used for tool integration and description supports reuse and machine processing of the descriptions. The host descriptors are generated automatically on the machine using the locally deployed tool descriptors. These are defined once per tool and will automatically be extended with activation information, i.e., actual paths. 3.3 Web Services Framework TRMS services are Web Services that interact using the Simple Object Access Protocol (SOAP) [10]. These web services can be accessed using the Hypertext Transfer Protocol (HTTP) SOAP binding. However, to allow connections through existing firewalls, an advanced transport mechanism has to be established. We have introduced the Advanced Network Transport Service (ANTS) as a transport mechanism to TRMS in order to resolve those issues. ANTS establishes a peer-to-peer network interconnecting nodes in different physical networks by the use of different transport protocols including transparent support for various features like routing, relay, polling, tunneling to overcome connectivity problems between these networks like those introduced by firewalls and network address translation. Thus, ANTS enables distributed services that communicate using existing network infrastructure, i.e., the Internet or a local area network. Furthermore, interactions with the web services are secured by using XML Encryption [11] and XML Signature [12] for the SOAP messages. This allows service level user authentication and protects the intellectual property contained in the SOAP messages using 256 bit AES Encryption with RSA-based RSAES-OAEP encryption [5] for the AES keys.

4 Conclusions We have presented TRMS as a middleware that enables dynamic tool integration by means of XML-based semantic tool description and secure peer-to-peer based Web services that overcome connectivity problems between highly protected Intranets. This allows establishing distance-spanning collaborative engineering environments. Current industrial case studies and trials in well-defined testbeds with selected European system houses and chip manufacturers show promising results with respect to the stability of the implemented software and easy application and flexibility of the provided interfaces.

Acknowledgments The work described herein is funded by the IST project E-Colleg (IST-1999-11746). We gratefully acknowledge the fruitful discussions and valuable remarks of our E-Colleg partners.

References [1] Altova GmbH: XMLSpy 5. http://www.xmlspy.com, 2003. [2] CFI: Tool Encapsulation Specification; Version 1.0.0. CAD Framework Initiative Inc., Austin, USA, 1992. [3] Mueller, W., Schattkowsky, T., Eikerling, H.J., Wegner, J.: Dynamic Tool Integration in Heterogeneous Computer Networks. Proceedings of DATE 03, Munich, Germany, 2003. [4] NIST: Advanced Encryption Standard (AES). http://csrc.nist.gov/publications/fips/fips197/fips-197.pdf, 2001. [5] RSA Laboratories: RSAES-OAEP Encryption Scheme - Algorithm specification and supporting documentation. ftp://ftp.rsasecurity.com/pub/rsalabs/rsa_algorithm/rsa-oaep_spec.pdf, 2000. [6] Schefstroem, D.; van den Broek, G.: Tool Integration. Wiley Series in Software Based Systems, John Wiley & Sons, 1993. [7] Schattkowsky, T.: A Model-based approach for dynamic Tool Integration. In Proc. 7th Multi-Conference on Systemics, Cybernetics and Informatics SCI 2003, Orlando, FL, USA, June 2003. [8] Schattkowsky, T., Müller, W.: Tool Registration and Management Services (TRMS) – Definition. EColleg D4.1.3. 2002. [9] Thronicke, W.; Fox, W.; et al.: From Tool Integration to Workflow Management - A Lean Integration Solution. In Proc. 2nd World Conference on Integrated Design and Process Technology, Austin, TX, Dec. 1996. [10] W3C: SOAP Version 1.2 Part 0: Primer. http://www.w3c.org/TR/2003/PR-soap12-part0-20030507/, 2003. [11] W3C: XML Encryption Syntax and Processing. http://www.w3c.org/TR/xmlenc-core/, 2003. [12] W3C: XML-Signature Syntax and Processing. http://www.w3c.org/TR/xmldsig-core/, 2002.