Navigation in Huge Information Hierarchies Application to Network Management Bénédicte Le Grand
Michel Soto
Laboratoire d’Informatique de Paris 6 8, rue du Capitaine Scott 75015 Paris, France tel : 33 1 44 27 75 12
Laboratoire d’Informatique de Paris 6 8, rue du Capitaine Scott 75015 Paris, FRANCE tel : 33 1 44 27 88 30
Email :
[email protected]
Email :
[email protected]
ABSTRACT Complex information systems are very difficult to represent and users often have problems to find relevant information; this is the case with Web navigation: users feel “lost”. Data contained in such systems can often be organized hierarchically, thus it is possible to represent it as a tree. However, most visualizations are cluttered because of the amount of information to display. We propose to solve these problems by using Virtual Reality (VR) techniques. After reviewing different 3D visualization methods, we decided to use cone trees. Unfortunately, the enhancement provided by graphic methods is not sufficient when hierarchies are very large; in such cases, trees must be pruned with filtering methods. We chose to structure and manipulate data with the eXtensible Markup Language [19]. XML allows the description and organization of any type of information. In this paper, we show how we implemented these principles in the field of network management (for networks based on Synchronous Digital Hierarchy (SDH) equipment). The application we developed eases navigation in data extracted from the Management Information Base (MIB) and accelerates access to useful information. In the future, we will apply these results to Web navigation.
Keywords Information retrieval, representation of hierarchies, 3D visualization, XML.
1. INTRODUCTION This work aims at studying new 3D visualization tools for large information hierarchies which are very difficult to use and represent. The Web is a complex information system: the volume of data and its lack of structure make navigation and information retrieval extremely critical. Complex data can often be divided hierarchically and thus can be represented as a tree. We want to develop a tool to visualize any type of hierarchical data. Before dealing with navigation on the Web, we focused on a more “limited” problem: management of Synchronous Digital Hierarchy networks. We developed an application which will be described in this paper. Synchronous Digital Hierarchy (SDH) offers technical possibilities to build high-speed transport networks (10.5 Gb/s). Broadband network services rely on high throughput and high reliability.
SDH is an ITU-T digital transmission standard [7] that defines common interfaces for vendors’ compatibility, a digital hierarchy for optical-fiber cable transmission and a frame structure for multiplexing. [11] presents the basic concepts of SDH and its frame formats. We started from an existing network management tool that provides a representation of the network and the list of alarms concerning equipment. Visualized elements are SDH crossconnects, consisting of racks, subracks, boards, etc. As showed in Figure 1, equipment decomposition is hierarchical. We thus need to represent a logical tree. However, this structure is not totally hierarchical as SDH ports can communicate; these cross connections must appear on our visualization. In the existing tool, the network is visualized in 2D; when users click on a node, its children appear in the same window. Because of the great number of nodes to display, the screen is rapidly cluttered. Users get lost and cannot find the piece of information they are looking for. In this paper, we propose a new 3D visualization which represents more efficiently both the global hierarchy and the connections between different SDH communication ports. This speeds up access to relevant information and helps users find their way within the hierarchy. 3D allows a more efficient use of screen space. In particular, links between nodes do not intersect. We used Virtual Reality (VR) techniques and data analysis methods. VR provides solutions in terms of representation and navigation. According to [18], graph visualization with VR is three times as efficient as with a simple 3D diagram, because VR allows interactivity, which is essential [9]. It makes abstract concepts easier to understand. Moreover, level of detail techniques optimize rendering by displaying details only when the visualized object is close. However, these representation and navigation methods cannot solve the whole problem: there is still a large amount of information to display. Therefore the initial hierarchy must be pruned with filtering and aggregating techniques. In section 2, we explain how XML allows to organize, model and manipulate complex sets of data. Section 3 presents visualization techniques which have proven to be successful in building adhoc visualization tools for complex data. In section 4, we depict our tool applied to SDH network management using both XML and 3D visualization techniques coupled with filtering and aggregating capabilities. Finally, section 5 discusses the results and presents further work.
2. ORGANIZATION AND MODELING OF DATA WITH XML Data must be organized and structured so as to be processed later. Our tool will be fit for use with any type of information. We investigated the eXtensible Markup Language [19] which the World-Wide Web Consortium (W3C) describes as "a common syntax for expressing data structure". XML promises to be the standard for Web development and for structured data transfer. Distributed applications have shown problems caused by the lack of a uniform standard to transfer structured data. XML was developed to solve these problems [12]. It offers a structured and consistent way to describe and transfer data. XML maintains the separation of the user interface from the actual data. XML documents contain character data (content) and markup (providing structures for that content). Unlike HTML [20] tags, XML tags have no predefined meaning. Data and markup tags are organized in groups called elements. Every XML document consists of elements hanging together in a logical tree structure. Elements may also have attributes attached to them; they describe elements’ properties. It is possible to store information about the document’s content; this information is called the Document Type Declaration ([23]). It defines which markup tags can be used in the document, what order they can appear in, what other tags they can contain, etc. A DTD is necessary to be able to check if an XML document is valid and/or well formed. The following source code is a part of our DTD:
equipement (rack*)> equipement id ID #IMPLIED (0|1) "0" number CDATA "0" > rack (subrack*)> rack id ID #IMPLIED isAlarmed number CDATA "0" > subrack (carte*)> subrack id ID #IMPLIED isAlarmed number CDATA "0" >
An equipment is made of racks, and has the following attributes: isAlarmed and number. For more details about attributes, see part 4.2. XML’s real force is its interaction with the Document Object Model ([22]). The DOM is a platform - and language - neutral program interface that allows programs and scripts to access and update the content, structure and style of documents in a standard way. The DOM is a set of interfaces and objects designed for managing HTML and XML documents. The use of the DOM in our application is described in section 4.3.
3. INFORMATION TECHNIQUES
VISUALIZATION
Both representation and navigation are important in order to visualize information. First, the way nodes are displayed is essential. It becomes a critical issue when the size of the hierarchy increases: representations must deal with this problem. The techniques and tools for data representation provide users with an overview of the hierarchy and enable them to visualize a specific node within the whole context.
However, one must keep in mind that visualizations are used not only for information retrieval, but also for a good understanding of the global hierarchy structure. The interface should allow users to manipulate data, and organize it according to their will: this is the concept of dynamic visualization. While navigating within a hierarchy, one should be able to find a specific node and to visualize it within the global environment.
3.1 Representation model One of the critical problems with complex data visualization is to find efficient abstraction or metaphor enabling users to get an overview of data space and to find rapidly relevant information. In the following we review main metaphors used for hierarchical information visualization: -
Treemaps ([3]) represent hierarchical information via a 2D rectangular map. It provides compact visual representations of complex data spaces through both area and color. We did not choose this metaphor, because we wanted to use 3D.
-
Information landscapes ([1]) and CGI’s File System Navigator ([15]) display information in 3D. Such visualizations are very intuitive, but they are rapidly cluttered and not fitted to large hierarchies.
-
Fisheye Visualizations ([14]): they show the center of interest in a large scale and with great detail, while areas further from the center get smaller and less detailed.
-
Hyperbolic visualizations ([10]): hyperbolic geometry is able to display trees that grow exponentially, whereas Euclidian spaces representations are rapidly cluttered. The hierarchy is laid out in a uniform way on a hyperbolic plane, which is mapped onto a circular display. This representation is less esthetic than information landscapes, but many nodes can be displayed.
-
Cone trees ([24]) are 3D interactive visualizations of hierarchically structured information. Each sub-tree is associated to a cone; the vertex at the root of the sub-tree is placed at the apex of the cone and its children are arranged around the base of the cone. According to [17], it was difficult to find a specific node within the whole structure in the first versions. A good distribution of nodes is not enough to provide an efficient visualization for large hierarchies. SPAVIS implementation of the cityscape metaphor ([8]) enhances cone trees by giving redundant information about hierarchical information. The importance of nodes is symbolized not only by their position within the structure, but also by their size: the more important the node is, the bigger it appears in the visualization. One can also use other visual cues, such as nodes’ shape, orientation and texture. [4] also enhances cone trees by using fisheye views, colors, shapes and text. Using shapes rather than texture is interesting as different shapes are easy to distinguish, even with a poor resolution. Text can be added to give more information about a node (for instance the title of the Web page). The use of different levels of detail improves the rendering and reduces visual cluttering.
3.2 Fundamental factors Structuring large amount of complex data is necessary to improve information retrieval and navigation nevertheless the way information is presented to users is also a major issue.
Fundamental factors for a good visualization interface are ([9]): • An overview of the structure for a global understanding of the structure and of the relationships within the hierarchy, • The ability to zoom and to select some nodes, • Dynamic requests in order to filter data in real time.
SDH is based on STM-N frames which have a throughput multiple of 155.20 Mb/s. These frames are built in several steps: first, data is placed in containers (C). A Virtual Container (VC) is created when a pointer is added to each container. The association of a VC and a pointer leads to a Tributary Unit (TU) for low bit rates and to an Administrative Unit (AU) for higher bit rates. A TUG (Tributary Unit Group) is a group of TUs.
Another important feature is to allow users to work with data according to their needs. Several ways to get a given result must also be provided by the interface to cope with the habits of different users and to quicken the learning of the tool.
4.2 Raw data organization
4. APPLICATION MANAGEMENT
TO
NETWORK
SDH networks managers have to explore a huge amount of data to obtain relevant information. This information is located in a widely distributed database named the Management Information Base [13]. All network equipment (host, switch, modem, etc.) maintain the MIB. At first, we chose to investigate this area to have a first experience in complex data visualization. Our work will then be generalized to the Web. There are many similarities between SDH network management and the Web: the amount of data to explore, the structure – mainly hierarchical with potential cross connections between elements (cf. Figure 1). The main difference with the Web lies in data types. In SDH network management, there is a finite number of well known and standardized types, which is not the case for Web data types. Moreover, this problem is a concrete one, with well identified users enabling us to get rapid feedback about the efficiency of our approach. In the following we detail our approach and the prototype we developed.
4.1 Data model Raw data is SDH network management data extracted from the MIB. SDH equipment can be divided as follows:
Data concerning equipment is stored in an XML file. Each rectangle in Figure 1corresponds to an XML element (there are 37 types of elements). Additional information about these nodes is contained in attributes. Each element has an identifier and a Boolean attribute (isAlarmed), set to true if an alarm was detected. The Boolean attribute crossConnected indicates the existence of a connection between two elements. If there is one, a reference to the linked node is provided by the linked-node attribute. VC and AU elements have two more attributes giving information about performance: perf1minStarted and perf15minStarted.
4.3 Structured data processing Many XML parsers are now available; [2] reviews and compares some of them. We chose IBM’s XML4J DOM Parser [5], because of its good performances; its other advantage is that it is totally written in Java, which is interesting for us (we work with Java3D [16], cf. end of paragraph). The analysis of an XML file leads to the creation of a DOM tree, which can be accessed and modified easily. There are methods such as getChildNodes(), getFirstChild(), getParentNode(), getNextSibling(), getNodeType(), getNodeValue(), getAttribute(), etc. Nodes can be added (with the method insertBefore), suppressed (removeChild) or replaced (replaceChild). Elements and their attributes are easy to access with the DOM, so that users can select relevant data. Our tool can also stress nodes where an alarm has been detected; we just have to locate the nodes for which isAlarmed is true. The DOM tree is traversed to create a second tree, which is displayed in 3D : the Java 3D tree. Element nodes from the DOM tree can thus be visualized.
4.4 User interaction
Figure 1: Hierarchical composition of SDH equipment
When our application is run, two windows appear on the screen. The first one contains the XML source file and its representation as a 2D tree (cf. figure 3). We chose to keep a “traditional” 2D view together with 3D so as not to confuse users. The second window, called global view, contains the 3D tree representing the whole equipment (cf. figure 2). We used cone trees as 3D representation model. Nodes are spheres whose color changes according to the level in the hierarchy. 3D cone trees make it possible to display much more nodes than 2D trees. Consistency between 2D and 3D views is achieved: when a node is selected in the global view, the corresponding line in the 2D tree is highlighted and node’s properties are displayed – name, attributes and so on. Users should always have a global point of view, so that they know exactly where they are within the hierarchy. Therefore, the trees displayed first represent the whole structure. Then, users are free to manipulate data. Actually, our tool provides an interactive visualization. Interesting nodes can be put in the foreground with zooms (cf. figure 4), translations and rotations. Network managers can delete irrelevant branches and expand interesting ones. They can select specific elements and display them in separate 2D windows called detailed views. We described how our tool allows users to keep a global point of view and to focus on specific elements. Two filters were added to answer network managers’ needs. They are particularly
interested in elements where an alarm was raised; they need to know the consequences of these problems for connected ports. “Alarmed” nodes are stressed on the visualization and connections starting from these elements can be displayed.
Figure 2 represents an example of global view:
Figure 2 Global view of a hierarchy
The following figures are other examples of visualizations:
5. CONCLUSIONS AND FUTURE WORK We presented issues dealing with information representation and retrieval in large hierarchical structures, in particular in a tree containing data for network management. We approached this problem by organizing raw data with the XML language and the Document Object Model which allows an easy access to information. Cone trees were chosen as 3D-representation model. However, they are not sufficient when the hierarchy is very large. Users should be able to find information quickly. Therefore data must be filtered and special attention must be given to navigation. The prototype was shown to SDH network managers whose reactions are positive. In particular, users greatly like the 3D display that represents all supervised network elements since this is not possible with the 2D tool they currently use. Filters which highlight alarmed network elements and cross connections between SDH ports are appreciated too. Moreover, managers must frequently supervise and establish new cross connections in most equipment failure scenarios. These cross connections are difficult to locate with the current tool. In the future, we will first enhance this application by extending the panel of users actions. For instance, users asked us to provide the tool with the capability to add or remove connections between nodes using the graphical representation (and not only from the source file). Currently, they use the different interfaces of each network element to do this. Second, we will propose other 3D representation models (e.g. hyperbolic trees). Then, we will provide a history of navigation so as to allow the "back" function. We will aggregate some information in a few nodes of the tree, so as users can immediately see if a specific branch might be relevant to him. They won’t have to expand it to have an idea of its content. Currently users need to select a node to see its properties. Finally, we will apply these results to navigation on the Web that raises the same problems -disorientation and inefficiency. The nodes will symbolize Web pages or fragments of Web pages. It will be possible to filter data with an intelligent information retrieval tool which will use keywords and DTD, for example.
6. REFERENCES [1] Andrews K., Visualizing Rich, Structured Hypermedia, IEEE Computer Graphics and Applications, pp 40-42, July/Aug. 1998. Figure 3: 2D tree and XML source file
[2] Anez Juan Carlo, Java XML Parsers - A Comparative Evaluation of 7 Free Tools, Java Report Online, http://www.javareport.com/html/products/prod_rev.shtml, February 1999. [3] Asahi T., Turo D., Shneiderman B., Visual decision-making: Using treemaps for the Analytic Hierarchy Process, Proceedings of CHI’95 Conference, Denver, Colorado, USA: ACM, May 7-11, 1995. [4] Carriere J., Kazman R., Interacting with Huge Hierarchies: Beyond Cone Trees, Proceedings of the IEEE Symposium on Information Visualization, Atlanta, Georgia, USA, pp. 74-81, Oct. 1995. [5] IBM AlphaWorks, XML Parser for Java, http://www.alphaworks.ibm.com/formula/XML
Figure 4. Zoom on the 3D tree
[6] ISO (International Organization for Standardization), Standard Generalized Markup Language (SGML), First edition, Geneva, 1986.
[7] ITU-T Recommendation G.707, Network node interface for the synchronous digital hierarchy (SDH), March 1996.
[15] Silicon Graphics, 3D File System Navigator for IRIX 4.0+, 1995.
[8] Keskin C., Vogelmann V., Effective visualization of hierarchical graphs with the cityscape metaphor, Proceedings of the ACM Conference on Information and Knowledge Management (CIKM’97), Las Vegas, Nevada, USA, Nov. 13-14, 1997 .
[16] Sun Microsystems, Java3D API Specification Version 1.1.2, June 1999.
[9] Kurnar H., Plaisant C., Teittinen M., Schneiderman B., Visual Information for Network Configuration, University of Maryland CS technical reports, Maryland, USA, June 1994. [10] Munzner T., Burchard P., Visualizing the Structure of the World Wide Web in 3D Hyperbolic Space, Special issue of Computer Graphics, ACM SIGGRAPH, pp. 33-38, New York, USA, 1995. [11] Omidyar C. G., Aldridge A., Introduction to SDH/SONET, C. G. IEEE Communications Magazine, vol. 31, n°9, pp. 30-33. [12] Pontus Norman A Study Of eXtensible Markup Language (XML), Royal Institute of Technology, Stockholm, Sweden, 25 February 1999. [13] rfc 1213, Mib II: Management Information Base for network management of TCP/IP based internets [14] Sarkar M., Brown M. H., Graphical Fisheye Views, Brown University CS Department Technical Reports: CS-93-40, USA, March 23, 1993.
[17] Tversky O. J., Snibbe S. S., Zelenick R., Cone Trees in the UGA Graphics Systems: Suggestions of a more Robust Visualization Tool, Brown University CS Dept Technical Reports: CS-93-07, 1993. [18] Ware C., Franck G., Viewing a Graph in a Virtual Reality Display is Three Times as Good as a 2D Diagram, IEEE Conference on Visual Languages, St Louis, Missouri, Faculty of Computer Science, University of New Brunswick, 1994. [19] World Wide Web Consortium, Extensible Markup Language (XML) Version 1.0, 10 February 1998. [20] World Wide Web Consortium, HyperText Markup Language Version 4.0 (HTML),24 April 1998. [21] World Wide Web Consortium Recommendation, Cascading Style Sheets (CSS), 12 May 1998 [22] World Wide Web Consortium, Level 1 Document Object Model (DOM) Specification Version 1.0, 20 July 1998. [23] World Wide Web Consortium, Data Modeling Report prepared for: W3C XML Specification DTD, 10 September 1998. [24] XEROX Information Visualizer, http://www.birkhauser.com/hypermedia/cyb59.html