Friday, December 5, 2014

4. OFFLINE EMAIL SYSTEM DESIGN ARCHITECTURE

4. OFFLINE EMAIL SYSTEM DESIGN ARCHITECTURE


In this chapter the network architecture of the TCP/IP email system and DTN email system briefly presented. The approach of using a TCP/IP on a DTN email system discussed by presenting the idea of using TCP/IP mail system as a DTN mail system, analysis of the idea and abstraction of the TCP/IP mail system based on DTN. Then the application and network topology being used for this offline email system discussed. After that, network protocol and details of the design for this offline email system is discussed and then go on to a design solution for database synchronization.

3. METHODOLOGY

3.      METHODOLOGY

      This offline email system development is using an iterative approach as illustrated in Figure 3.1.

Figure 3.1: Iterative Approach
In step 1, the information from various sources was gathered to define the problem and understand how to actually make the email based on delay tolerant networking. Major findings are listed below:
i)                    RFC5050 is a standard for delay networking define by the DTN Research Group (DTNRG).
ii)                  CafNet is a Carry and Forward delay tolerant network. It implements a delay-tolerant network stack that allows applications to send messages to other network nodes when no end-to-end connectivity is present. CafNet delay-tolerant network stack consists of a CafNet Transport Layer, CafNet Network Layer and one or more Mule Adaptation Layers. Each node connected through link mechanisms where the data is physically carried on a USB key. CafNet prioritizes messages such that data with a higher priority is sent during short bursts of connectivity.
iii)                The Architecture of Email [11] and protocols such as TCP/IP, delay tolerant network (DTN) [10], simple mail transfer protocol (SMTP) [12] and internet message access protocol (IMAP) [13].
In step 2, the development approach of this offline email system is selected and related information is identified. CafNet concept is used in this offline email system where the data is physically carried on a USB Key. The difference is this system data is carried and transferred automatically when it reaches the terminal location through a wireless local area network and database synchronization. The standard for delay networking defines by DTN Research Group (DTNRG) concept applied on data mule and data bundling for its store and forward operation. There are several possible ways to implement the systems including:
i)                                Implementation from scratch by following the native DTN protocol
ii)                              Implementation from scratch by using TCP/IP mail system works as a DTN mail system
iii)                            Implementation using existing application to fulfill requirement of TCP/IP mail system working as a DTN mail system.
The third approach is selected because of the design effort is fairly follows the TCP/IP thus adding some new design to make it working as DTN, a free and open source software is used and adaptation of standard email usage to the end user.
In step 3, the system is designed closely as standard TCP/IP email architecture except for the infomediary device and emails data synchronization implemented to make a connection between separate terminal locations. Step 4, step 5 and step 6 which is implementation, system testing and result analysis progressed simultaneously starting from setting up a local server computer, home server accessible to the internet implementation, mail server, mail client and infomediary device which includes the database synchronization. This is to ensure every part of the implementation is working accordingly and produced the expected result.

Finally in step 7, documentations were recorded including the system requirement, design, implementation, testing and result. The documentation progress simultaneously from the beginning of the project until completed and then finalize at the end. In the next chapter system design architecture is discussed.

2.6 Summary


The DTN architecture aims to provide interconnection between several networks which may have a poor performance characteristic because of distance or time delay in data transmission. There are differences in TCP/IP compare to delay tolerant network protocol. But for some application such as email, there is some similarity in term of operation where email is a delay tolerant application and no need for end-to-end connectivity. This makes it possible to implement a TCP/IP email system to work as a delay tolerant network (DTN) with some additional method to establish a connection between separate terminal locations by using data mule. In the next chapter, methodology is discussed.

Using sencha build in Jetty Webserver

Usually sencha developer will use xampp for local server. But, sencha also had built in server for that purpose. It did had a build in Jetty web server to ease the application developmnent.

To start the http file server, just run this command inside your app path:

sencha web start

Then you can open the app in the browser from this address: http://localhost:1841

To stop the server, hit ctrl+C or just run this command:

sencha web stop

That is all. Happy coding.

Monday, December 1, 2014

2.5.2 Offline Gmail

 Offline Gmail is an email system by Google which is separated from Gmail itself. It is designed for accessing, managing and sending email while user disconnected from the web. Offline Gmail originally build based off the tablet version which designed to function with or without internet access. It contains all the features needed while offline including organizing, starring, labeling, archiving reading and responding to email. When sending email offline, the email will be stored in the Outbox. The stored email will automatically sent when connected to the internet.

Offline Gmail data were updated only on mail client and every user needs to bring their mail client from offline to online environment. Therefore, it does not need any database synchronization. Comparison of Offline Gmail and this thesis work is also discussed in chapter 4.4 and illustrated in Table 4.2. Offline Gmail only available in Chrome Browser while others such as Firefox needed Google Gears installed. Google Gears adding new features to the web browser to allow some online files to be used offline. Unfortunately Google Gears was discontinued on 19 February 2010. The ordinary mail client being used in this thesis which mean any web browser can be used to access this offline email system. A third party mail client such as Mozilla Thunderbird and Microsoft Outlook can be used.

Sunday, November 30, 2014

2.5 Similar Works

 Bytewalla 5 is a delay tolerant network on Android phones. This project uses android phones with delay-tolerant networking to connect African rural villages. The idea is that the android mobile phone will store and carry data from villages to cities. In the village, the data will be downloaded to android mobile phone from a Wi-Fi access point for example in a telecentre with no internet connectivity. When in the city, the Android phone will connect to another Wi-Fi access point and upload the data. This "data mule" operation will enable emails downloaded at the village to be delivered in the city.

The Bytewalla 5 approaches are the same as this thesis project, the difference is the data transfer in Bytewalla 5 being done by the DTN application on android phone while this thesis project data transfer being done by file synchronization application on a server computer. The details comparison is discussed in chapter 4.4 and illustrated in Table 4.2. Bytewalla 5 and this thesis project similarly use android phone as a data mule. This data mule has no Bundle Protocol layer implemented since Bytewalla 5 and this thesis project only use android phone as Bundle Protocol carriers. The bundle data for Bytewalla 5 is stored in one single file while this thesis project bundle data is the exact copy of data from the server with no alteration. Bytewalla 5 uses Ubuntu 8.04 for its DTN Server and this thesis project use Windows XP for its DTN Server. Bytewalla 5 follows very closely the design of DTN2, the DTN reference implementation written in C++ by the DTNRG while this thesis project only follows the concept of store and forward in DTN and applied it in TCP/IP using a suitable application for its email application.