System architecture
System Architecture
Application Server
The Application Server is the core of the UbiEst architecture. Through the Application Server, web services gain access to the cartography display functions, route and distance calculation and the database containing P.O.I.s (Points Of Interest).
Trasp Server - TS
Trasp Server (TS) is the software package that performs the communication with the TC or the TSFTC, from which queries of maps and/or routes arrive in static (.GIF, JPEG) and vectorial formats. The package is available only for UbiEst hosted services. For each query, the server contains a checks the presence and availability of resources and, if necessary, activates a new thread. When the process is completed, the thread becomes immediately available for other queries.
Moreover, information about server condition is available for clients who specifically ask for it in order to allow them to change the routing tables. The server is state-less. For each query, the server prepares an answer and ‘forgets’. The result of each query is one or more memory buffer.
Application Server Sentinel Deamon ASSD
This deamon verifies the resource application state and, if there is a problem, it reports to an expert (by e-mail, SMS, etc.), and tries to find a solution. Deamon is working on each machine that owns an Application Server.
Moreover, the system can count on an extension of that agent which verifies the functioning of all the machines configurated on the UbiEst network.
Database Server
UbiEst endorsed Oracle database technology. Some machines are dedicated to controlling and managing access to the database. All relevant information to UbiEst services are stored on the database, with the exception of information that will be collected by the G.U.D. Information is replicated on several databases and after each change, thanks to a synchronization mechanism, data are updated on the master database. Information replication on several databases guarantees a high level of security and data extraction efficiency.
The stored information consists of:
P.O.I. - UbiEst Database
All UbiEst points of interest to be stored on the database which allows several options for the research through P.O.I. and for P.O.I use on map display.
Customers’ P.O.I. Database
Users can enter personal P.O.I on UbiEst database, in order to use them for research and display purposes (as for UbiEst P.O.I.). Streams allow the batch loading and update from customisable standard routes. During the insertion operation, P.O.I. are georeferenced, so that they can be integrated into the mapping.
Users can also directly handle the maintenance of their own P.O.I. from a Web administrative extranet, accessible from the user section of UbiEst website. For security purposes, a password is required to access these services.
Another function allows users to download textual information that includes a list of their own P.O.I, in order to allow an ASP to integrate maps with information that may not be available on the UbiEst server.
Log Database
For verification purposes, all information about access logs will be available for users on the database.
Services Database
The database contains all information about user configurations and qualifications referred to UbiEst services. This allows for a high level of auto-management and the ease of inputting necessary profile edit details.
UbiEst Web Server
All dynamic map queries from remote clients are handled on UbiEst Web Servers. These queries arrive as dynamic URL page which interact with Application Servers: in our architecture, this function is ‘embedded’ on PHP module. As a result, the Web Server creates HTML pages with the map link.
Trasp Client -TC
Trasp Client module exports all functions needed to find the information provided by UbiEst. The module is ‘wrapped up’ in several packages, in order to meet the needs of different users of UbiEst geocoding services. This client will be installed, in Unix (deamon or CGI) or NT (activeX OCX or DLL) versions on the users’ Web Server. The TC module is used as a Web Server extension. Web Servers allow TC module functioning through a default multi-thread mechanism on the Web Servers. In fact, the multi-thread mechanism is provided by Web Server (i.e. IIS for Microsoft, etc.) which will make a request to the client for each query received. In this architecture, the TC module will by internally used by UbiEst, in order to realise the front end Web Servers, and will also be provided as interface for the business users of the MapBroker service (for businesses which have their own web servers). TC is an easily portable C++ program.
Trasp Server Firewall
Trasp Client - TSFTC For applets or clients outside UbiEst servers, it will not be possible to send a request directly to our computational machines (with private addresses). The request will have to be addressed to front end machines with public addresses. For this reason, we have devised a particular process: when a request arrives on a particular gate, the system will verify identification parameters and will forward the request to the Application Server. Once the answer is received, the result is forwarded to the caller. This process contains all TC and TS functions and filter layer for all activities to and from the outside. The TSFTC location is realised on the Gateway Front-End Servers: these act as bus for UbiEst cartography services addressed to companies which wish to independently manage HTLM pages creation for map display. A passage through this process is also scheduled for MapViewer Java Applets. TSFTC has the task of managing a smart bridging in the context of the services available on Application Servers located inside the UbiEst network. The task is entirely transparent for remote elements installed on users’ servers or into distributed applets. TSFTC protects data and services of UbiEst network from unauthorized access and restricts access to authorized requests only. In order to increase the reliability and to secure the up-time of our service, the transport client elements are conceived to host dynamic routing tables, aimed at redirecting the requests to the least loaded machines. This will allow clients to change the server to which they make requests, if the normal communication route is blocked or overloaded. Thanks to a broadcasting mechanism, the UbiEst servers line up clients with server farm and relevant services in order to distribute the amount of work on servers and machines.
Firewall
A firewall control is installed in order to block unauthorized or unwelcome access to the server farm.
LoadBalancer
The server farm is equipped with a load balancer which optimizes the available resource utilisation and forwards requests to less loaded Web servers.
External Elements
Customer Web Server
Customer Web Servers performs as UbiEst Web Servers: it can feature different platforms, development environment and software. UbiEst delivers services to Windows and UNIX OS, most common web servers technologies (IIS, Apache, etc.) and to any web pages environment like ASP, PHP, JSP, CGI, etc.
MapViewer
Map interactive display is available through some elements which allow map consultation. MapViewer contains the communication module with UbiEst servers, in order to request vector data. UbiEst servers will handle directly and satisfactorily all different requests submitted. The main functions are:
- Map display
- Re-centering by single click on the map
- Change of Scale (right click on map to obtain the available scales list) or selection bar for zoom level (from street to Nation)
- Zoom in / Out (+/-)
- Zoom in on a rectangle selection
- Cardinal points navigation
- Multi-route distance calculation
- Route calculation through multi-path procedure
- Route research and display: route is highlighted also when map is moved
MapViewer Java Applet
For map viewing you can download the Java Applet included in the software. You can also parametrize the layout of the applet user interface and modify the following features:
- Map dimensions
- Colours
- Boundary
- Icons
- Components arrangement
- Font Nomenclature
- P.O.I. icons