Re: Implementing SIP protocol

Abhijit Menon-Sen <[email protected]> Mon, 10 Jan 2005 08:46:54 +0530
Newsgroups gmane.user-groups.linux.delhi.devel
Message-ID <[email protected]>
At 2005-01-09 18:06:41 -0500, [email protected] wrote:
>
> Agreed... but can't just SIP (session management) be implemented
> separately?

Sure, you can do whatever you want. The catch is, implementations that
are driven by no real purpose are more likely to suck than something
that's being written to achieve specific goals.

> Anyways, my query is how to go about implementing things from an RFC.
> Obviously, reading it is one important task, but what else do we have
> to take care of?

Interoperability. Read the working group (or whatever) mailing lists for
a while, and get a feeling of what's happening in practice. Test against
other clients and servers. Stick religiously to the ABNF.

As for what "programming style" you should use, do whatever works best
for you. My advice is to add one feature at a time, with its own tests,
so that you have a working (albeit incomplete) server or client between
each change. Run a known-good client against a known-good server, and
look at logs of the interaction. Implement commands in your server in
the same order as the client uses them. Rinse and repeat for another
client, another server, and so on.

> Anyone on this list tried something similar (not on SIP, but on any
> other protocol) ? ie, starting from the RFC & building up the things.

That's a large part of my job.

-- ams