daniel@unicom.UUCP (Dan Smith, watching the Unix Circus) (05/18/88)
I'm posting this to the net, in the hope that it will generate some useful positive feedback. My idea is to use data posted in comp.mail.maps (which appears on our system in /usr/uucp_maps) to show a 3d model of connections that a user could navigate through using a mouse or keyboard on a PC or graphics workstation (such as a Sun). I think such an application would present this data to a user in an intuitive way. - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - A Graphics Approach For Looking At UUCP Sites Dan Smith Intro Many Unix sites have mapping information online. These maps describe some basic facts about a site, and are made available through the Usenet newsgroup comp.mail.maps. Most sites send maps that contain information about who that site is connected to, as well as their own latitude and longitude. A map of the Usenet Backbone is posted on a monthly basis, and while it is informative, it is limited to showing many sites in a 2d format, and doesn't attempt to show sites geographically. I will explain a way of presenting this information graphically, and how it may be possible for a user to navigate around the graphical model, select different sites, and initiate actions that affect or relate to those sites. It is possible to use the information contained in UUCP maps to accurately show connections between sites, and to allow the user to see more than just the backbone sites. The Doughhnut Analogy Imagine a doughnut. Now, imagine the cross section of one, such as: /------\. . . ./------\ / \__ __/ \ | | | | \ /-- --\ / \______/. . . .\______/ (pardon the ascii graphics... within 10 years we won't have this limit anymore on the net :-) Now, taking the torus shape of a doughnut, and pinching in the center, and expanding the edges, we get this cross section: |\_ . . . . ._/| | \_ _/ | | \_ _/ | <-- longitude --> | \/ | <-- equator | () | | _/\_ | ^ | _/ \_ | | | _/ \_ | latitude |/. . . . . \| | v note: A sphere shape makes a lot of sense as well as I point out later. As we move away from the center, changes in latitude become more apparent. Looking at backbones I propose a 3d model, where backbone sites are boldly labeled near the center, most obviously corresponding with their longitude. Thus, I may see some sites on the screen, with ucbvax directly in front of me in the center. If I move my mouse to the right, the model rotates westward (so that my view heads east) so that I can look at, say, rutgers. If I move my mouse up, the model rotates south (so that my view heads north) so that rutgers appears in the center of my display. To the left and down (southwest), I might see gatech. The basic premise is that there is a mode to the model where you navigate around with a mouse or a keyboard, and that as you change direction in latitude or longitude, different sites will come into view (it's possible to have a see-through model, but it could get confusing). In this mode the user is "zoomed towards the core", and leaf and node sites are behind the user or across the room in 3d space. Expanding: What can be done with model, and Leaf sites Backbone sites are certainly important, but there needs to be a mechanism to see much more. It should be possible for the user to "zoom towards the equator", or edge, of the model. So far, our view of backbone sites involves this part of the model: _ _ | \/ | | () | | _/\_ | (again, a cross section) Leaf sites expand the model to this: | \_ _/ | | \/ | | () | | _/\_ | | _/ \_ | As the user zooms away from the core, through some keyboard or mouse button event, they may see a local backbone site and the leaves that it feeds. It should be possible to "select" sites (by pointing and clicking or by typing site names in), and show, for example, possible routes between two sites (such as ucbvax!decwrl!purdue), initiate an anonymous ftp login with a site, find a mail path, or just obtain information about a site (such as phone numbers, addresses, background information about the site, etc.). A user may want to zero in on a backbone site, and see all of the leafs in a region (bounded by a pair of longitudes and latitudes, or by a circular radius of a given number of miles or kilometers). Using data that appears in weekly usage reports, lines could be drawn between sites that are, for instance, thicker in proportion to traffic. It should be possible to limit the view to just a backbone site and all of the leaves it serves. The Node Sites (the complete cross section, once again) |\_ . . . . ._/| | \_ _/ | | \_ _/ | <-- longitude --> | \/ | <-- equator | () | | _/\_ | ^ | _/ \_ | | | _/ \_ | latitude |/. . . . . \| | v Last but not least, there are the many small companies and organizations that make up the nodes of Usenet. These sites typically receive a news feed, but don't have the resources to pass that feed on. A user navigating through the 3d representation of the UUCP map should be able to "zoom towards the edge" past the leaf sites, and be able to see some of the many thousands of little sites that make up the Usenet. In reality, Usenet is not as straightforward as backbone->leaf->node. There are many cases of two or more leaves. With the advent of UUNET, there are now some backbone->node sites. I feel that the user should be able to control how much detail they are seeing by zooming towards/away from the core, and also be able to limit a view based on longitude/latitude, etc. Limiting a view would have the effect of spacing out the sites on the display more, so that all of the labels of the sites could be readable. In other words, moving a mouse may show a change in longitude of a minute, rather than a degree, when the user put the program in some sort of detail mode. The user should also be able to change the aspect ratio of longitude/latitude to suit their preference/terminal etc. Other Thoughts The idea of a torus-like shape is the one that first occurred to me, but I also see the sense of using a sphere - moving away from the center to reach areas with less traffic. Whatever the shape, any point more than 90 degrees away longitudinally from the center of the screen needs to be hidden (most of the time), or rendered in a different color from points "closest" to the user - seeing some site in India close to Chicago (I don't have a globe handy, please don't get picky :-) could get confusing. Another possible means of control may be accomplished by having icons of north/south/east/west on the edges of the display; the user could click on these to rotate the display. Once a site is selected, there is the possibility for any number of actions to take place. A uucp or ftp connection could be established, the user may just want information, an electronic version of that sites' annual report may be available...it's limited only by the imagination. Geography isn't everything, when different baud rates and telephone rates come into play, the most direct route can mean "least number of hops", or "fastest tranfer rate, but more hops", or "frequent polling time", or a combination of all of these and more. The program would be that much better if it took these things into account. (based on feedback from Dan Heller) Color displays can represent city, county, area code, state, and country borders, without obscuring the information relating to sites. The model could be a front end to a hypertext system. Summary As powerful graphical displays become more commonplace, and UUCP Mapping Project data becomes more widely distributed, there is a need to show this data in a form that is intuitive. I feel that everyone is familiar with maps and globes, and that people would feel comfortable with manipulating a 3d display showing points that represented sites. Disclaimer I came up with this idea entirely on my own, meaning, I have not read anything that describes such an approach for showing UUCP map data. This article is my own effort, and does not purport to represent my employer, Island Graphics, in any way. I would like to see such an application on Suns, PC's, Macs, and so on. I'd like to contribute to any serious effort to develop this. Thanks in advance for any thoughts/suggestions. dan smith, island graphics, marin co, ca, good natured infonaut, hoopy frood 4000 civic center dr., san rafael 94903 | dis: they're solely my opinions... uucp: {ucbvax!ucbcad,sun}!island!daniel | ph: +1 (415) 491 1000 (W), 332 FAST, uucp: {pacbell,pixar}!unicom!daniel | 332 EASY (H)| unix/films/rock/feasts