Subject: [SIP] small sip stacks

From: "farhan" <[email-masked]>
Date: Tue, 29 Aug 2000 08:16:25 +0530

i am in total agreement with sean that we do need complete stacks. we need
reference implementations that do everything in the book. vovida's stack is
ofcourse a case in point. so is the excellent stack of dynamicsoft.com is
the 'taj mahal' of sip stacks - it is beautiful.

i am also convinced that there is never going to be the one and only true
stack. different platforms, different architectures and needs will drive how
big ever a stack is going to be. sean correctly points out that from apache
server to a small server stuffed into a PIC chip, it is possible to
implement the http protocol anywhere. But it is illuminating to note that
even the smallest of tcp or http stacks are fully functional without any
tradeoffs of functionality. There are only tradeoffs of scalability and
performance.

sean also said that -
 >That being said, I do believe it is possible to build a compact SIP stack.
>It is just a question of what tradeoffs you are willing to make.

the only tradeoff i am willing to make is in terms of performance, not
functionality. a good protocol will allow you to implement itself as simply
or as optimally as you like. I have seen completely functional tcp stacks
written in less than 2000 lines of code. students have written email UAs
with a few hundred lines of code. I am arguing that sip protocol should also
be the same. implement it in 1000 lines or in 1 million. It is the
implementor's call.

my finaly argument for smaller stacks is not scientific in nature. it is
just that huge stacks are not "simply profound". even though they maybe
inefficient, it is always an excellent engineering decision to not
over-engineer a protocol and leave it 80% OK.

if you take a darwinian perspective on the survival of the best protocols,
often enough, brilliantly designed protocols have often given way to simpler
and easier to work with protocols. SGML never took off the way HTML did.
Microsoft's DCOM failed where SOAP is succeeding.

- farhan

- farhan.

let's be clear that there isn't 'a' stack but probably two stacks that we
are really looking at. the UA stack and the proxy stack. I am convinced that
the proxy stacks ought to be strong and big. I am convinced that the UA
stacks ought to be small and light. (compare sendmail with elm).
the tradeoffs

_______________________________________________
SIP mailing list
[email-masked]
http://lists.bell-labs.com/mailman/listinfo/sip

---

From: Henning Schulzrinne <[email-masked]>
Date: Tue, 29 Aug 2000 04:02:04 -0400

This is bogus. The small TCP stacks, SMTP and HTTP are *not* the same as
the large ones. Small TCP stacks don't, for example, implement many of
the extensions such as window scaling or selective acknowledgements and
may make other short cuts. Same for HTTP, in terms of support for
caching, range retrievals, authentication or content negotiation, among
many other features contained in HTTP/1.1. Building a minimal SIP (UA)
stack is certainly possible in less than 1000 lines, judging from the
homework assignments I get back in one of my classes.