A novel approach for implementing high-speed and long-distance networking protocols in a limited memory embedded kernel
STREAMS kernel mechanisms are being used to implement networking protocols in limited memory embedded systems. The current approaches for STREAMS-based networking protocols implementation suffer from some shortcomings when these approaches are used to implement high-speed and long distance WAN protocols that require large transport windows. Accumulation of duplicate copies of large transport layer windows in the subnet layer cause unnecessary hogging of kernel memory resources. This memory hogging leads to performance degradation since shortage of buffers forces the protocols to operate at smaller window sizes. The reason for this overhead is that the protocols cannot be implemented efficiently due to strict layering scheme of STREAMS. We have devised new kernel mechanisms to provide solution to this problem. We have defined new mapping mechanisms between protocol layers and have coupled these mechanisms with novel event-based flow control mechanisms. These mechanisms provided appropriate flow control handling in the kernel that led to significant reduction in memory buffers hogging. This makes embedded systems handle large windows efficiently.
kernel streams embedded systems flow control