Software implementing open standards like SIP evolves over time, and often during the first years of deployment, products are either immature or do not implement the whole standard but rather only a subset. As a result, standard compliant messages are sometimes wrongly rejected and communication fails. In this paper we describe a novel approach called Babel-SIP for increasing the rate of acceptance for SIP messages. Babel-SIP is a filter that can be put in front of the actual SIP parser of a SIP proxy. By training a C4.5 decision tree, it gradually learns, which SIP messages are accepted by the parser, and which are not. The same tree can then be used for classifying incoming SIP messages. Those classified as "not accepted" can then be proactively changed into the most similar message that is known to be accepted from the past. By running experiments using a commercial SIP proxy, we demonstrate that Babel-SIP can drastically increase the message acceptance rate.
展开▼