Skip site navigation (1)Skip section navigation (2)
Date:      Thu, 1 Mar 2001 13:37:32 +0100 (CET)
From:      Harti Brandt <brandt@fokus.gmd.de>
To:        Marco Molteni <molter@tin.it>
Cc:        <freebsd-net@FreeBSD.ORG>
Subject:   Re: How to implement a transport protocol with netgraph? (2)
Message-ID:  <Pine.BSF.4.33.0103011334480.37362-100000@beagle.fokus.gmd.de>
In-Reply-To: <20010301133045.A1485@cobweb.example.org>

next in thread | previous in thread | raw e-mail | index | archive | help
On Thu, 1 Mar 2001, Marco Molteni wrote:

MM>[Since I didn't received a reply on my first posting, I am trying once more]
MM>
MM>Hi all,
MM>
MM>I have to implement a kernel version of the transport protocol SCTP
MM>(Stream Control Transmission Protocol, RFC 2960), plus a socket
MM>interface to it as in draft-ietf-stewart-sctpsocket-sigtran-01.txt
MM>(the RFC has an ad hoc user interface).
MM>
MM>It seems to me that the modularity of netgraph would help a lot in
MM>this project, as opposed to go hacking half the kernel networking
MM>stack to put SCTP in it (and yes, this is my first big project in
MM>kernel land).
MM>
MM>I read the netgraph blueprint article on Daemonnews and the various
MM>netgraph manpages. The problem is that all the examples and
MM>applications I could find are layer 2 and layer 3, there is no example
MM>of a transport protocol done with netgraph.
MM>
MM>Since SCTP is reliable, at the very minimum I will have to handle
MM>timers, buffers, retransmissions and friends.
MM>
MM>So my questions are:
MM>
MM>o Any example of a transport protocol done with netgraph, or any hints
MM>  (the more detailed the better :-) on how to tackle this task? Is
MM>  netgraph suited for this (I think yes) ?
MM>
MM>o Let's say the socket interface will be something like
MM>  sd = socket(PF_INET, SOCK_STREAM, IPPROTO_SCTP)
MM>  How (or where) do I connect the socket system call to the netgraph
MM>  framework?
MM>
MM>Thanks for the help
MM>Marco

I have implemented SSCOP for ATM signalling in netgraph lately. If it
helps you, I can send you the current code. There are however still a
number of issues:

- It has no socket interface yet. I plan to do one base on the ng_socket
  code. There should be a lot of similarities.

- How to do flow control is not very clear up to now. There are a number
  of messages defined in netgraph.h for this and I have used them, but
  had no time to do a thourough test.

harti
-- 
harti brandt, http://www.fokus.gmd.de/research/cc/cats/employees/hartmut.brandt/private
              brandt@fokus.gmd.de, harti@begemot.org


To Unsubscribe: send mail to majordomo@FreeBSD.org
with "unsubscribe freebsd-net" in the body of the message




Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?Pine.BSF.4.33.0103011334480.37362-100000>