Thursday, November 20, 2014

Ravana (RĀVAṆA)

Magnificent view from Cacilhas..
I have named the upcoming product of my PhD, RĀVAṆA, to honour our ancestor. (RĀVAṆA was a strong king and he is a great forefather of the island country of Lanka.)

The weather is getting colder. I am reaching my third winter in Lisbon. Time indeed goes fast.
 
Today I marked all the emails in Gmail as "Read". It was slightly more than 6000, just in the inbox, excluding the filters. This was my first time to have zero-unread-email, since the emails were adding up since late 2008, in the scales of 1000s. Never marked the emails read in bulk before. Gmail took a bit of time to make this transaction, and Gmail was unavailable for a minute or two. Having a cleaner looking Gmail now. :D You may read this post to learn how to mark all your unread emails in your Gmail account "read" in one shot.
 

Thursday, October 23, 2014

Configuring OpenDaylight Controller with Mininet

OpenDaylight with network emulated by Mininet
Once you have built OpenDaylight controller (or just chose to use the built OpenDaylight controller bundle), you may build and test the SDN solutions, with either networks or networks of virtual machines. Network emulators such as Mininet provide an effective alternative for SDN prototyping. Mininet can easily be installed from the regular repositories in Ubuntu.
$ sudo apt-get install mininet

Run OpenDaylight Controller (often as super user, for the privileges).
$ cd ~/OpenDayLight/controller/opendaylight/distribution/opendaylight/target/opendaylight
$ ./run.sh


Starting Mininet, for example, with a three-level tree topology.
The below command creates a tree topology with 3 levels.
$ sudo mn --controller=remote,ip=127.0.0.1 --topo tree,3
 
[sudo] password for pradeeban:
*** Creating network
*** Adding controller
*** Adding hosts:
h1 h2 h3 h4 h5 h6 h7 h8
*** Adding switches:
s1 s2 s3 s4 s5 s6 s7
*** Adding links:
(h1, s3) (h2, s3) (h3, s4) (h4, s4) (h5, s6) (h6, s6) (h7, s7) (h8, s7) (s1, s2) (s1, s5) (s2, s3) (s2, s4) (s5, s6) (s5, s7)
*** Configuring hosts
h1 h2 h3 h4 h5 h6 h7 h8
*** Starting controller
*** Starting 7 switches
s1 s2 s3 s4 s5 s6 s7
*** Starting CLI:
mininet>

OpenDaylight OSGi console would produce the below logs connecting to the network topology emulated by Mininet.

osgi>
osgi> 2014-10-16 11:58:07.606 WEST [ControllerI/O Thread] INFO  o.o.c.p.o.core.internal.Controller  - Switch:127.0.0.1:33215 is connected to the Controller
2014-10-16 11:58:08.450 WEST [ControllerI/O Thread] INFO  o.o.c.p.o.core.internal.Controller  - Switch:127.0.0.1:33216 is connected to the Controller
2014-10-16 11:58:08.502 WEST [ControllerI/O Thread] INFO  o.o.c.p.o.core.internal.Controller  - Switch:127.0.0.1:33217 is connected to the Controller
2014-10-16 11:58:08.552 WEST [ControllerI/O Thread] INFO  o.o.c.p.o.core.internal.Controller  - Switch:127.0.0.1:33218 is connected to the Controller
2014-10-16 11:58:08.613 WEST [ControllerI/O Thread] INFO  o.o.c.p.o.core.internal.Controller  - Switch:127.0.0.1:33219 is connected to the Controller
2014-10-16 11:58:08.686 WEST [ControllerI/O Thread] INFO  o.o.c.p.o.core.internal.Controller  - Switch:127.0.0.1:33220 is connected to the Controller
2014-10-16 11:58:08.770 WEST [ControllerI/O Thread] INFO  o.o.c.p.o.core.internal.Controller  - Switch:127.0.0.1:33221 is connected to the Controller
2014-10-16 11:58:08.849 WEST [ControllerI/O Thread] INFO  o.o.c.p.o.core.internal.Controller  - Switch:127.0.0.1:33222 is connected to the Controller

osgi>

The connected networked devices can be monitored from the admin console of OpenDaylight. In the default configurations, you may access the admin console in a browser from the url, http://127.0.0.1:8080, with user name and password 'admin'.


Different Topology options
Network topologies can be visualized using Mininet and OpenDaylight. While a few topologies are available out of the box with Mininet, more custom topologies can be programmed as well.

1. Single node with 5 ports 
$ sudo mn --controller=remote,ip=127.0.0.1 --topo single,5

2. Linear topology with 5 nodes
$ sudo mn --controller=remote,ip=127.0.0.1 --topo linear,5

3. Tree topology
a. 3-ary, 2 level tree

$ sudo mn --controller=remote,ip=127.0.0.1 --topo tree,depth=2,fanout=3

b. 3-ary, 4 level tree 
(This looks a bit messy)
 $ sudo mn --controller=remote,ip=127.0.0.1 --topo tree,depth=4,fanout=3

OpenDaylight wiki page mentions that only the Mininet in a VM (option #1) is tested with the OpenDaylight controller. However, as seen in this post, Mininet works well with OpenDaylight even in the Mininet installation from the packages (option #3).

Wednesday, October 22, 2014

Cheese Alternatives for Ubuntu..

If you want to take a photo of yourself using your laptop camera, say in a conference hall, or when someone else is presenting his project, without disturbing others, tools such as cheese come handy.

Cheese is a function-rich tool. However, the photos it takes are not of a good quality. Though the tool can be configured, this issue is not addressed. I found a few alternatives for Ubuntu - kamoso, camorama, and guvcview (GTK UVC Video Viewer). Just like cheese, all of these can be easily installed in Ubuntu from the repositories, using, 
$ sudo apt-get install kamoso camorama guvcview cheese

Among the tools, unfortunately the photos taken using guvcview are crashed and could not be opened in Ubuntu 14.04 LTS when I tried. The below error was produced when I opened the captured image.
Could not load image 'guvcview_image-3.jpg'.
Error interpreting JPEG image file (Quantization table 0x00 was not defined

Kamoso is good and can be configured; though it does not have all the fancy features of cheese, it produces somewhat better photos and also can capture videos as well as images in the burst (multiple photos with a specified time interval) mode.

Among all the tools that I have tried, camorama seemed to produce the best quality images. It also provides easy options to change the resolutions (small - 160 * 120, medium - 320 * 240, and large - 1280*720). Unlike the other tools, this does not provide options to capture videos or images in the burst mode. However, it does what it is supposed to do, perfectly.

Tuesday, October 14, 2014

Chat with a Skype Scam Bot..

Once in a while, I am added by Skype bots. A Skype bot is a script that adds multiple accounts in bulk. The motivation of these bots is to earn money by using click or referral marketing. The bot will pretend as a human, and make the victims click some links. Sometimes, Skype bots can be used for identity thefts and to rob money from the credit cards of the victims. I had a not-so-interesting chat with a Skype bot. The bot added me. I knew it was a bot from the beginning. But just kept the conversation so that I can make it into this blog post. :P 

Be careful with this bot (mega.fresh7) or any other random Skype accounts. They are mostly just scripts with no real human. They just exploit the greed and lust of the victims for their own benefit.

 Segunda-feira, 13 de Outubro de 2014
[20:57:31] mega.fresh7: hi there :)
[22:30:40] mega.fresh7: heyy :)
 Terça-feira, 14 de Outubro de 2014
[10:50:25] Pradeeban Kathiravelu: Hi
[10:50:53] mega.fresh7: (wave) hey...i saw your profile on the new skype app...i hope you don't mind me adding you? 23/f here u?
[12:43:18] Pradeeban Kathiravelu: ok. no prob
[12:43:44] mega.fresh7: im busy studying, i hate it sometimes it gets so boring. what are you up to? :)
[12:43:58] Pradeeban Kathiravelu: I am busy studying too
[12:44:26] mega.fresh7: lol im studying for my bachelors in psychology...its really hard...need a break tho! you ever chat on cam?
[12:44:53] Pradeeban Kathiravelu: Not much. Recommend me a text book in psychology, please?
[12:45:00] Pradeeban Kathiravelu: would like to read during the free time.
[12:45:21] mega.fresh7: it can be fun i love meeting new people on cam chat, you ever been on this new video chat site?  it has all sorts of cool effects and stuff lol (cool)
[12:45:56] Pradeeban Kathiravelu: No. I am not into video chat. Just recommend me a book in psychology to read.
[12:46:23] mega.fresh7: i think i will just put on a camisole and a thong then =) i think u will like it?? i hope atleast... :x
[12:46:42] Pradeeban Kathiravelu: No. Stop this bullshit.
[12:47:04] mega.fresh7: [SCAM LINK REMOVED] lol go here do u see my cam?
[12:47:27] Pradeeban Kathiravelu: Stop chatting to me. Otherwise, I will report you to Skype
[12:47:44] mega.fresh7: pleaaase...  whatever!  byeeeeee
[12:47:56] Pradeeban Kathiravelu: bye
[12:48:25] mega.fresh7: Well if you must leave... tell ya what if ya want to see me later on my cam goto [SCAM LINK REMOVED] just accept my cam invite..  Its Fast and easy..  we'll prolly be online for the rest of the day so you can go and see me on my cam.  Take care
[12:49:08] Pradeeban Kathiravelu: No thanks. bye.
[12:49:29] mega.fresh7: no worries..thouhght u wanted to see me naked ..:)
[12:49:44] Pradeeban Kathiravelu: No thanks. bye.
[12:50:56] mega.fresh7: oh, i think you might have to fill out some stuff...everyone gets verified as being real on here, keeps the creepy people away!!! lol :x
[12:51:20] Pradeeban Kathiravelu: Stop sending stupid things to me. OKAY?
[12:51:48] mega.fresh7: k, yea i had to do the cc part too  =( that how i got my profile verified as real (kiss) u don't get charged, its free. did u get in?
[12:52:15] Pradeeban Kathiravelu: No. You creepy robot. get lost.
[12:52:36] mega.fresh7: what are we playing terminator roles?? lolz
[12:52:53] Pradeeban Kathiravelu: STOP
[12:53:21] mega.fresh7: k let me know when your signed in so i can send u some "private time" loving! (kiss) mmm
[12:53:43] Pradeeban Kathiravelu: .
[12:54:01] mega.fresh7: please come...im waiting!!
[12:54:06] Pradeeban Kathiravelu: .



From the chat log, it is obvious that there is no real human behind the bot. The bot is not smart either, as it could not answer simple queries. A.L.I.C.E. is much better!

Friday, October 10, 2014

Why "Ignore" is the best strategy to combat spam

A typical image used to manipulate human emotions
The most annoying of all the spams are the spams that make us feel that the person who shared it is a person with minimal level of knowledge. Many of my friends, despite their education and professional levels, fall for the spams that claim sharing a photo will make Facebook donate 1 USD to the poor people. 

More annoyingly, now it has even started to spread to LinkedIn. People download and share photos asking for "Likes". "A million of likes would make my dad quit smoking". They do not even care how can someone use LinkedIn to track the number of likes each of these photos received, as the original photo is actually not just shared. Rather, it is downloaded and re-uploaded. Also, they just assume that the social networks somehow keep track of the number of shares of these photos.

I used to explain to people sharing such posts why these are scams/spams. Eventually I have realized, ignoring is the best way to combat these spams. If you really feel the urge to voice your opinion, send a separate personal email or message regarding this. Just do not comment on the spam/scam photo/post.

Here I explain why.

1. Some users just think Facebook works this way
Trying to explain them is often useless. They just reply, "OK. I just shared. It did not cost me anything. In case, if Facebook indeed donates something? What a big deal?".

2. "Sharing is caring/praying/.."
The second logic they give is, we share to pray for these people. These are just plain spams and the original page owner wants you to share these images just to make their page popular. Moreover, the images are used without the permission of the rightful owners, and are often manipulated with hoaxes. 

The more you share, the more visibility the page gets. The page will eventually be sold to someone. However, if you try to explain the reality as a comment to the photo, the photo gets more visibility. Facebook or LinkedIn cannot differentiate the positive comment from a negative comment. For a spammer, any response is a good response. Ignorance is the only bad response.

3. "If you don't care, can't you just shut up"
"We share because we care about people who are affected. It is ok that you do not care. But can you just stop discouraging those who genuinely care about this marvellous initiative that gives away money to the poor" Believe me, I have seen similar comments for real as a response to anyone who try to explain why we should not share these images.

4. Some users just pretend to be stupid
Now these are the ones who spam intentionally. They download and re-share these contents, or create their own. By manipulating human emotions, they try to exploit some photo that obviously does not belong to them, for their own benefit. For example, getting more visibility to their page or business. Likes, comments, and shares - all are equally valuable for them.

Facebook, LinkedIn, and other social media should be made more intelligent. They should be made to differentiate a supportive comment from a negative comment. At least, they should provide options to the commenter, whether he/she chooses to publish his activity to their network. I do not want my friends to see a spam image just because I commented on that. Also, I do not want the spam to get more scores, just because of the number of comments. Unfortunately, this option is not yet available. Till we get this fixed, it is better to ignore, than trying to explain.