about a usb adsl modem driver
Jose M Rodriguez
josemi at freebsd.jazztel.es
Fri Dec 3 11:45:03 PST 2004
El Viernes, 3 de Diciembre de 2004 17:50, Roman Kurakin escribió:
> Jose M Rodriguez wrote:
> >Hi,
> >
> >I've got a eagle usb adsl modem and get ready to work on FreeBSD
> > support for it.
> > [...]
> >
> >My first idea was a sppp based one, that can be ported to all xBSD.
> > But now I think that a netgraph thing must be a better first
> > contact.
>
> Note, with Netgraph you may use sppp via ng_sppp(4). Also it is not
> to hard to
> implement a dual driver. But I sugest to not do that way, especialy
> if you want to
> support multiple branches. I know how hard is that ;-).
> (http://www.cronyx.ru/software/sigma.html)
> If your implementation would work with sppp (via ng_sppp(4)) or you
> would need
> smth additional from sppp(4) let me know.
>
> rik
>
Well, this may depend of noted interest.
I can work on RELENG_5_3 or RELENG_4, but I need some commiter that can
take this into HEAD.
I found Netgraph the easy path. A, let's say, ng_uadsl limited only to
move aal5 between the modem and netgraph may be enough to use routed
protocols, bridged mode, pppoe, pppoa, pptp, user-ppp, sppp, ... just
with some equivalents of frame relay nodes and atm_llc, adapted to
rfc2684.
The hard part of this solution is that we need more userland work to
sync all this stuff.
Also, I noted that most of home adsl connections are of just only three
categories:
- IPv4 routed (generally LLC)
- pppoe over ethernet bridge (Only LLC)
- pppoa (generally VCMux, but also LLC)
I think this can be taken by a sppp derived work.
pppoa may be really direct (just PDU test/adjust), but the other need
more work.
IPv4 routed needs some kinda of bypass control, to use only the basic if
interface after sppp.
pppoe (only client) may be implemented in a single step with ethernet
bridge encapsulation as a dial extension.
Also, an auto mode for pppoe/pppoa-LLC/pppoa-VCMux may be implemented
without too much problem (rotatory mode selection in sucesive dial
attemps).
Support form OpenBSD must be easy, but NetBSD is another story. This
implementation is heavily affected by pppoe works and really differ
from FreeBSD/OpenBSD.
Also, the usb part needs works.
A eagle implementation based on ueagle must be easy. but this driver is,
right now, too much 'eagle oriented'.
I'll prefer a 'ugen derived' model (used by net/pppoa). Or, at last, a
more generic driver.
This needs really 'too much manpower' that I can expend now.
So, if noboby else have any more to say, I'll work it only two basic
directions, time permitting:
- a sppp based, pppoa only driver for eagle, derived from ueagle, for
RELENG_5.
- a ng_ueagle node for RELENG_5 derived from ueagle.
thanks for your time,
--
josemi
More information about the freebsd-net
mailing list