1. Architectural Overview |
|
I Collaborator SamePage has been architectured to minimize the classic trade-off between security and functionality. The core philosophy of the architecture is to recognize the critical needs of the enterprise and address those concerns around usage scenarios, with minimal impact on usability. |
|
|
|
Figure 1.1 : Architecture |
|
1.1 Architectural Considerations |
|
The I Collaborator SamePage architecture is deliberately modular and pluggable. The design specifications are granular and discrete components with minimal cohesion between them. This architectural model makes I Collaborator SamePage robust, scalable, secure and customizable. |
|
The I Collaborator SamePage Server consists of various functional servers that can be run off a single machine or can be loaded separately on different machines in parallel when there is a significant demand load. Communications between components are through proprietary processes that are encrypted using MD5 Encryption Algorithms. DES, RSA or other encryption can also be provided. |
|
The user database is maintained at both the core-communicating servers (Presence Server and the Notification Server) to ensure that the message coming from any client is correct and that particular user is authorized to send that particular message (data). |
|
1.1.1 Basic Architecture |
|
As shown in the figure below, there are four main components in the system. |
1. |
Presence Server |
2. |
Notification Server |
3. |
Application Server |
4. |
I Collaborator SamePage Application |
|
|
Each component is encapsulated by two layers the message interface and the ENDEC (ENcoder DECoder). The ENDEC layer can be customized to provide varying Security levels depending on the clients need. |
|
The Message Interface manages the communication with other components and modules of the system. The Notification Server and the Presence Server refers to the User Pool to authenticate each incoming message from a client. All communication is channeled through dedicated sockets. |
|
Presence Server |
|
|
|
Notification Server |
|
|
|
Application Server |
|
|
|
|
Figure 1.1.1: Server Modules Details |
|
1.2 Presence Server |
|
The presence server manages and maintains the information on all other components of the server and the logon information (presence) of all the users. It maintains the status information on all other functional servers within the I Collaborator SamePage application installation. The user database is maintained within the Presence Server. |
|
The Presence Server comprises of following modules: |
|
- Database Manager
- Authentication Module
- Message Interface
- ENDEC
- Transaction Logging Module
|
|
1.2.1 Database Manager |
|
This module interfaces with the database and maintains all related data like the connections with the database etc. |
|
1.2.2 Authentication Module |
|
This module verifies and authenticates the user and the message source by referencing the User Database. The ENDEC layer encrypts the incoming and outgoing layer only after verification and authentication. |
|
1.2.3 Message Interface |
The Message Interface Module manages the transmission and receipt of all messages between the components and modules of the I Collaborator SamePage environment. The message interface also converts the data into binary formats to pipe data through the sockets. |
|
1.2.4 ENDEC |
|
Encodes or decodes all the data (messages) that are received or which are to be sent out; encryption and decryption is managed within this layer. The security protocols are defined within this layer. |
|
1.2.5 Transaction Logging Module |
|
The Transaction Logging at the server side maintains a separate log for each user. This log is maintained for each message received from, and each action of a user. The administrator can view these logs using the administrator tool. |
|
1.3 Notification Server |
|
The Notification Server is the dedicated server, which maintains connections with fixed number of clients. Each client is assigned a Notification Server through which it will communicate and establish all further connections. The Notification Server is capable of communicating with all other active Notification Servers to track down a client. The Notification Server also maintains a user pool in which it manages each user’s ‘buddy list’ and status. Notification Server comprises of following modules: |
|
- User Pool Management
- Connection Management
- Communication Gateway
- ENDEC
- Message Interface
- Transaction Logging Module
|
|
1.3.1 User Pool Management |
|
This module maintains and manages all information of the clients connected to it. |
|
1.3.2 Connection Management |
|
This module constantly polls all the clients connected to check their connection status. If a client fails to reply to the query positively, then the connection with that client is terminated and announced appropriately. |
|
1.3.3 Communication Gateway |
|
This module has the sockets that are connected to the Presence Server and the Notification Server. This module handles all the data, which is to be sent and received from the presence server or the Notification Server. |
|
1.4 Application Server |
|
The Application Server is a collection of all the functional servers, which provide the different I Collaborator SamePage services such as Chat/Conferencing, Presentation, and White Board etc. Though each server is different at the core level, following features are common to all the Functional Servers. |
|
- Connection Management
- ENDEC
- Message Interface
- Transaction Logging Module
|
|
|
|
Figure 1.4 : I Collaborator SamePage Application Server |
|
1.4.1 I Collaborator SamePage Application |
|
The I Collaborator SamePage core platform provides the User Interface and the Presentation Logic thereof. The Component consists of: |
|
- Authentication Module
- ENDEC Module
- Chat/Conference Module
- Personal Data Manager
- Presentation Module
- File Sharing Module
- Email Module
- Communication Gateway
- White Board Module
- Transaction/Session Log Module
|
|
1.4.1.1 Authentication Module |
|
The Authentication Module generates the Login Screens and manages the error handling routine in case of login errors. |
1.4.1.2 ENDEC Module |
|
Encodes or decodes all the data (messages) that are received or which are to be sent out; encryption and decryption is managed within this layer. The security protocols are defined within this layer. |
1.4.1.3 Chat/Conference Module |
|
This module manages all chat sessions; it also manages the initialization process and communicates with the Log Module to maintain a log of all the chat sessions. Other features like the chat schedule module, emotion icons, file transfer, image transfers etc., are controlled by this module. |
1.4.1.4 Personal Data Manager |
|
The personal data manager manages all the data stored by the user like the templates (chat templates as well as the mail templates), chat logging etc. |
1.4.1.5 Presentation Module |
|
The presentation module takes care of the Flash™ presentation independently. In future, all other presentation formats like the movie clips, PowerPoint™ presentations etc will be pluggable into the Presentation Module. |
1.4.1.6 File Sharing Module |
|
This module handles all the functionalities of the file-sharing module like the Remote File download, Remote File Execution, Remote Uploading etc. |
1.4.1.7 Email Module |
|
All mailer functionalities are handled here including mail storing, mail downloading etc. |
1.4.1.8 Communication Gateway |
|
The Communication Gateway manages the sockets, which communicate with other servers or peer clients. The Gateway also interacts with the ENDEC module to either encrypt the message or decrypt the message. |
1.4.1.9 White Board Module |
|
The White Board Module handles all the white board messages. |
1.4.1.10 Transaction/Session Log Module |
|
This module maintains all the logs on the chat/conference log, the File Transfer Log etc. This module on the client side is invoked only when user wants to store logs. By default, the logging mechanism is turned off on the user side. |
1.4.1.11 Other Modules |
|
I Collaborator SamePage’s modular approach was envisaged to leverage the power of messaging technologies for very specific business uses, most any type of application can be plugged into the I Collaborator SamePage platform to achieve extensibility of applications. |
|