February 27, 2005
IP Phone auto configuration
Most of the phones have LCD based and HTTP based interfaces to do local configuration. But for large scale deployment , auto provisioning based on the MAC is a recommended solution.
Basically a TFTP/FTP server will host the config files/firmware upgrades. The phones will pickup the TFTP/FTP server IP from DHCP options. It will then download the config and auto configure itself.
One of the issues is , the config file format is not standard. Each Vendor have their own format. It will be better if we have a common format atleast for the basic parameters like userid, password, SIP server, TN.
Basically a TFTP/FTP server will host the config files/firmware upgrades. The phones will pickup the TFTP/FTP server IP from DHCP options. It will then download the config and auto configure itself.
One of the issues is , the config file format is not standard. Each Vendor have their own format. It will be better if we have a common format atleast for the basic parameters like userid, password, SIP server, TN.
February 26, 2005
NAT and VoIP
One of the issues in VoIP is NAT traversal. This is all bcos of the fact we thought that 32 bits are enough for the world.
Looks like we cannot live with 32 bit anymore and whole internet will be on IPv6 in the near future.
For now, how to solve NAT issues in a VoIP env? There are several ways and the following are the few which i have used in VoIP implementations i have worked on.
- SIP Aware Routers . These routers have knowledge of SIP and they automatically change the SIP headers to reflect NAT addresses.
- STUN servers (Simple Traversal of UDP in NAT) : These use public STUN servers which will respond back with a NAT IP. The SIP UAs can then use those IPs instead of the local IP
For more info
http://www.newport-networks.com/whitepapers/nat-traversal.html
Looks like we cannot live with 32 bit anymore and whole internet will be on IPv6 in the near future.
For now, how to solve NAT issues in a VoIP env? There are several ways and the following are the few which i have used in VoIP implementations i have worked on.
- SIP Aware Routers . These routers have knowledge of SIP and they automatically change the SIP headers to reflect NAT addresses.
- STUN servers (Simple Traversal of UDP in NAT) : These use public STUN servers which will respond back with a NAT IP. The SIP UAs can then use those IPs instead of the local IP
For more info
http://www.newport-networks.com/whitepapers/nat-traversal.html
February 25, 2005
Java Reflection and Exception
How to catch the exceptions thrown by methods that are invoked using the Reflection API. I was bit lost while debugging an exception since the current code just print the InvocationTargetException.
The printStackTrace on this exception will not show the original exception. The solution is to use getTargetException() on this exception, which will return the original exception.
The printStackTrace on this exception will not show the original exception. The solution is to use getTargetException() on this exception, which will return the original exception.
February 23, 2005
D-Bus
The IPC for Desktop - OS Communications. Yes , we do have lot of IPC mechanisms already. But this one is powerful where we can have signalling similar to Plug-n-Play in Win$. A Desktop app can get notified of a hardware event. One more feature is , it uses binary protocol.
http://dbus.freedesktop.org/doc/dbus-tutorial.html
http://dbus.freedesktop.org/doc/dbus-tutorial.html
February 17, 2005
Brands with most impact - 2004
February 15, 2005
sXBL
In Simple terms - XSL for dynamic Graphics rendering of XML data. Basically we can define graphics objects for XML Elements. It uses SVG for defining the graphics objects.
This reminds me of an Location tracking project , where we did SVG rendering of data feed from RMI based servers. Probably using this, it would be much more easier.
http://www-106.ibm.com/developerworks/xml/library/x-sxbl1/
This reminds me of an Location tracking project , where we did SVG rendering of data feed from RMI based servers. Probably using this, it would be much more easier.
http://www-106.ibm.com/developerworks/xml/library/x-sxbl1/
February 12, 2005
Ferris
libFerris provides an easy to use interface for FileSystems. Its has a C++ based API to manipulate filesystems.
This way nice GUI interfaces with good features can be rapidly developed.
http://witme.sourceforge.net/libferris.web/index.html
This way nice GUI interfaces with good features can be rapidly developed.
http://witme.sourceforge.net/libferris.web/index.html
February 11, 2005
ARP Flux / Linux
ARP flux is an issue on multi homed hosts (machines with multiple network interfaces). This happens when the ARP response goes on a different interface than the one it came in. Thus creating some confusions on the switches.
I looked into this when our multi-interface Linux appliance was behaving inconsistenly. One of the ways to solve this issue , is to apply the "hidden" patch, which will ensure that the ARP response goes out correctly.
For more info refer to http://www.ssi.bg/~ja/#hidden
I looked into this when our multi-interface Linux appliance was behaving inconsistenly. One of the ways to solve this issue , is to apply the "hidden" patch, which will ensure that the ARP response goes out correctly.
For more info refer to http://www.ssi.bg/~ja/#hidden
February 09, 2005
Smallest Secure Web Server
Sun has developed the world`s smallest secure web server.
http://research.sun.com/spotlight/2004-12-20_vgupta.html
These type of research indicates we are not far way from the future where all electric/electronic devices can have their own web interface.
http://research.sun.com/spotlight/2004-12-20_vgupta.html
These type of research indicates we are not far way from the future where all electric/electronic devices can have their own web interface.
February 06, 2005
DSF
Device Simulator Framework is a framework to create virtual devices on Linux. This can be used to test device driver code when actual devices are not present. It provides an easy to use IOCTL interface.
Few years back while working on a linux based appliance, we did something similar in user space to simulate tape devices. But that approach does not test the st driver since it was in user space.
I think using DSF the same thing could be done in much more proper way.
http://www-106.ibm.com/developerworks/linux/library/l-dsf.html
Few years back while working on a linux based appliance, we did something similar in user space to simulate tape devices. But that approach does not test the st driver since it was in user space.
I think using DSF the same thing could be done in much more proper way.
http://www-106.ibm.com/developerworks/linux/library/l-dsf.html
February 05, 2005
JDistro
A Desktop for JVM. More than one app can use the same JVM. Bcos of that, the launch time of the apps will be better.
Not to be compared with JDS (Sun`s Java Deskop System). They are totally different concepts.
http://www.jdistro.com/
Not to be compared with JDS (Sun`s Java Deskop System). They are totally different concepts.
http://www.jdistro.com/
February 03, 2005
JVM Networking Properties
While working on a Linux based network device, I got the chance to learn more about Linux Network subsystem. We had to fine tune some of the properties using /proc/ interface. This is really needed for Gigabit Ethernet or IP over FC.
In Current project, I had a similar need and found this interesting document on various networking settings that can be set for a JVM.
The one caught my attention was the DNS cache settings.
http://java.sun.com/j2se/1.4.2/docs/guide/net/properties.html
In Current project, I had a similar need and found this interesting document on various networking settings that can be set for a JVM.
The one caught my attention was the DNS cache settings.
http://java.sun.com/j2se/1.4.2/docs/guide/net/properties.html