Monday, October 8, 2007

Bassa Now Supports RSS TV Standard

We have seen the growing popularity of RSS Video recently. That motivated us to integrate an RSS video module for Bassa. As a result now Bassa can subscribe for video RSS feeds and download videos when ever a new video is available. Videos downloaded by Bassa are immediately available for previewing through video previewing module.

Wednesday, July 11, 2007

Video Preview Module Ready

Bassa can now convert most video types to FLV (Adobe Flash Video). This is done by using mod_flv.so. After downloading the video content this module starts performing. mod_flv relies on ffmpeg and it works in an asynchronous fashion, that means it works in background even after download notification has been sent to the front-end. Once encoding and decoding is completed it will send the meta content notification to the front-end. After front-end updates it's meta content status, the users will start watching FLV movies (full movie or a preview, according to the configuration of mod_flv) on the web interface.

This feature will take Bassa to home networks. Now users can organize their downloaded multimedia content in a better way than they did earlier. Bassa developers are planning to build an RSS TV module for Bassa, so content shared by RSS TV feeds can be downloaded automatically and convert in to full length FLVs or previews by Bassa. This makes your internet downloads more manageable.

Monday, July 9, 2007

Bassa a New Mode of Operation

Bassa will support a new mode of operation called 24x7. Currently Bassa queue requests coming in to it and start downloading when it receives a signal at a predefined time. Similarly it will stop downloading the queued requests for the second signal. This is the way Bassa is working, which is ideal for low bandwidth networks.

But to enjoy the benefits of Bassa in a high bandwidth network above mentioned behavior should not impose limitations on its users. For high bandwidth networks there is no need of keeping requests in a queue until a signal is received. To achieve this we plan to introduce a 24x7 mode which means that Bassa will start downloading content as soon as the requests come from the user. Once this is enabled Bassa's configuration file will have a directive to set modes. If this directive is set to 24x7 it will be ready for high bandwidth networks by disabling queuing option, but keeping all other features boasted as many times in this site. If the directive is set to default it will be using the famous queuing option.

This mode of operation will also support bandwidth rate limiting. Therefore the bandwidth usage of Bassa could be limited before web browsers start starving without enough bandwidth.

Sunday, July 8, 2007

Modular Bassa

Bassa gets hot swapable module support this summer. Now developers can develop modules to extend basic functionalities of Bassa. Modules can be loaded and unloaded without restarting Bassa server. Modules written for Bassa falls in to 4 categories. Further information on module architecture can be found in documentation. Apart from the module support there are plans to merge Bassa project with GADisk project.

Wednesday, May 23, 2007

Do You Know Bassa?

I have been working on an open source project for the past few months at University of Colombo School of Computing (UCSC). It was a solution for the bandwidth problem experienced by UCSC staff and students. You can get more information on how and why I initiated this project from Bassa site.

The project was circled around several existing concepts like, content distribution, content caching, content sharing, policy based networking etc. Bassa basically relies on several other open source products to perform it's tasks.

1. Squid
2. Apache
3. MySQL
4. PHP

Bassa system's front line of defence is Squid proxy. Squid is armed with an ACL to detect requests (HTTP/FTP) that request for files larger than a given threshold. This threshold is defined by the network policy. If the file requested is larger than the threshold Squid will redirect the user to a different site called GADisk (Globally Accessible Disk) which works as the front end of Bassa (uses LAMP).

If the file has been already downloaded by a different user, the file will be streamed back to the user. The above process is fully transparent from the user's perspective. The user will even not get the idea that he is getting the file from a local content server (Edge sever). The only thing he will notice is the increased speed of the transaction.

If the file was not downloaded by a different user, the user will be immediately prompted for his user name and password by GADisk. After logging in successfully the user's file request will be queued in Bassa server (written in C). The whole request queue will be downloaded by Bassa server in batch mode when bandwidth is available.

The other advantage is that users can log in to the system and start browsing or searching the cache through their web browser. This is a feature that traditional proxy caches cannot provide you. And GADisk is capable of describing the content in an extraordinary way so that the users can get an idea what the content look like before they download it in to their local computer. For an instance after Bassa downloads a video/audio it will generate a 10 second trailer of the video/audio in Flash video format. In addition there will be thumbnails for videos as well (Other information like Genre, Artist, Album will also come along with above mentioned items). And Bassa is also capable of doing above process even if the file is compressed. For ISO and compressed files Bassa will generate file lists within the archive. Similarly Bassa also generates PNGs of PDF/Open office doc pages for on site viewing.

Content describing comes really useful for users when they perform searches. All the content is tagged according to their MIME Type, therefore users can narrow the search. And also they can preview audio/video or documents (PDF, Open office, etc.) on site before downloading. After looking at the content users have the option of commenting about them, in other words Bassa can even work as a content oriented blog.

Given below is a diagram of high level architecture of Bassa.





Finally the Bassa had delivered following benefits for the end user.

1. They have more bandwidth for browsing web, since large bandwidth consuming downloads are done at off-peak.
2. Users can effortlessly share the content they have downloaded.
3. Users can save LAN bandwidth and disk space by identifying what they really need to download before they process downloading a file.
4. Users can communicate through content based blogging.
5. Reducing the traffic (Bandwidth usage) at remote servers by caching content in Bassa cache.

After implementing and deploying this tool at UCSC network, the web has become more responsive, and users are quite satisfied with it.

Monday, April 23, 2007

Welcome to Bassa Product Blog

This is bassa's official product blog.