Sunday, August 24, 2008

USB Popularity

In the recent time there is a huge, visible increase in popularity of USB. USB which was initially developed to support PC peripherals, is now extended its existence in digital world by devices like digital camera, iPod, mobile phones etc. Mature technology, backward-compatible, cheap single interface, Easy plug and play etc. are some of the reasons which boosted its popularity.

USB has tree like structure called tired-star topology, which provides the flexibility to connect multiple devices(up to 127), at the same time. The devices includes the compound devices (device comprised of a function device and at least one hub). USB provide the freedom to attach devices at any time with least effort as USB devices are automatically recognized and configured.
Another feature of USB contributing to its popularity, is its power management, which enables the devices to draw power from USB or from an attached self powered hub. With introduction of each new standard, there was significant increase in data transfer rates with full backward compatibility. Therefore currently the USB support the 3 different data transfers rates 1.5 Mbps(low speed), 12 Mbps(medium speed) and 480 Mbps(high speed).

As evidenced of USB popularity, many extensions of the USB, like the OTG (On-The-Go), are available in the market. Also many companies are combining the USB with other devices to provide the flexibility to the user. Currently we can see many technologies build over USB like wireless, Bluetooth etc. It is the popularity of USB stick which eliminated the floppy drive from the computer. The popularity can be guessed easily from the fact that there are more than 2 millions of USB devices currently in use, around the world.

The popularity of USB and the increase in file size capability of digital media, motivated the development of USB 3.0 standard. The USB 3.0, which is also known as SuperSpeed USB, is expected to provide a speed of the 10 times faster than current USB 2.0. It means the SuperSpeed USB will transfer data at the rate of 4.8Gb/s compare to 480Mb/s of USB 2.0. This will provide fast synchronization of data consumer devices and mobile which are now capable of holding more than 25GB file.

Wednesday, August 13, 2008

Advantages of "Innovation time off"

Google deploy a technique called “Innovation time off”, to encourage its employee to spend 20% working(one day of their week) on the work they like. Products like Gmail, Google News, Orkut, AdSense etc are the results of this technique. They claim, about half of their new products are result of this 20% free time. Isn’t sound interesting, getting 50% of return for an investment of 20%.

Today, most of the organizations are providing good facilities and good environment, to get best from their employees. But instead of providing facilities isn’t good idea to provide the one project of employee’s interest, to get best from them. Also this technique will help to utilize the bench period of the employees, as in the free time each employee will be busy with a project. The project which is result of his thought process.

In a regular project, contribution of a junior level resource, in designing phase is very minimal as designing is normally performed by senior members of the team. During 20% time, employee will work on the projects ignited by his own idea, therefore he gets a good chance to design his won idea/project. This will help to increase the creativity of the employees.

In software industries, work satisfaction, is one of the major factor of Attrition. Most of employees, I found, are not happy with the project they are doing. “Innovation time off” ensure that at every time, each resource is engage, at least in one of the project of his interest. Thus it must be very effect to retain the best talent in the organization.

Besides all above mentioned advantages, there are some challenges in front of organization, in implementing the “Innovation time off” technique. One of the major problem is the ‘schedule tightness’, but at least organization can start with providing one afternoon (10%) of free time, to their employee, to work on projects of their choice.

Wednesday, August 6, 2008

Why it is difficult to block skype protocol?


In recent some years the popularity and usability of skype increase rapidly among the user, thanks to its ability to negotiate firewalls, network address translation and other barriers. This ability of skype has made the life of system administrator more miserable and raised some security concern. How difficult is to block the skype can be easily guess by the fact that even with the huge popularity, till date, there are very few applications or firewalls which support blocking of skype.

Why it is difficult to block skype protocol?

1> Random port:
A Skype client randomly choose the port number, including the HTTP port (80) and HTTPS port(443), to listen for a TCP and a UDP connection. Therefore any rule to block traffic on any particular port does not work for skype.

2> Host Cache:
Skype Client builds and refreshes the host cache (HC) regularly। This host cache contains the list of super node IP address and port which act as skype server. As the Host Cache entries keeps on changing, any rule based on IP address also does not work.


3> Encryption :
Skype uses AES (Advanced Encryption Standard) with 256 bit encryption. Because of 256 bit encryption, the number of possible keys, to actively encrypt the data in each Skype call or instant message, are huge( 1.1 x 1077). Skype uses 1536 to 2048 bit RSA to negotiate symmetric AES keys.


4> Nat and Firewall:
Skype Client uses a variation of the STUN (Simple Traversal of UDP the NAT) and TURN (Traversal Using Relay NAT) protocols to determine the type of NAT and firewall it is behind. This ensure that it reach the internet.

How to block skype?

So is there any way to block the skype protocol in a network? Yes, the only way to achieve it by inspecting the packets containing the skype traffic and identifying the skype signature. But as the skype is a encrypted protocol, it is not very easy to do so even by packet inspection. The only place it can be identify and block, is at the time of login. Once the login is over it is very difficult to distinguish between packets of the skype or other HTTPS packets.