peakame
驱动牛犊
驱动牛犊
  • 注册日期2002-06-28
  • 最后登录2013-08-07
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望0点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
阅读:1684回复:9

请大家多多献策(PPPoE)

楼主#
更多 发布于:2003-07-22 23:19
老板现在要我写一个PPPoE的软件模块,而且不要使用Windows系统下原有的PPP功能模块,也就是不使用Windows自带的拨号界面,我分析可能就是绕开Windows系统原有的拨号模块,自己重新开发,要求是该软件模块直接和上面的IP接口,下面和网卡接口,同时还和上层的应用软件接口(如拨号界面等),请问这该如何做?
我现在最关系的问题是:
1。能否在Windows系统下撇开原有的拨号软件,重新写一个?该如何做?
2。NDIS驱动程序如何和上次应用程序接口?
liuzq
驱动小牛
驱动小牛
  • 注册日期2003-05-25
  • 最后登录2004-06-19
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望0点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
沙发#
发布于:2003-07-23 08:30
用TAPI接口,即linexxxx向NDISWAN发命令,你老板不会叫你绕开TAPI
mikeluo
驱动老牛
驱动老牛
  • 注册日期2001-09-04
  • 最后登录2007-05-07
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望0点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
板凳#
发布于:2003-07-23 08:51
用TAPI接口,即linexxxx向NDISWAN发命令,你老板不会叫你绕开TAPI

为什么不???

如果是我,我也不要TAPI的那些东西。

做个虚拟网卡,在里面实现ppp和pppoe功能就ok了,当然还有收发包的问题,再简单做个协议,把真实网卡上的ppp和pppoe报文转道虚拟网卡即可。
学而不思则罔,思而不学则殆 学而思之,思而学之,岂非圣人乎?
peakame
驱动牛犊
驱动牛犊
  • 注册日期2002-06-28
  • 最后登录2013-08-07
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望0点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
地板#
发布于:2003-07-23 09:27
我怀疑老板的意思就是和mikeluo的一样,他说是为了将来的扩展性大。
经过分析,我觉得老板的意思是自己写PPP和PPPoE部分,然后上面直接和IP接口(而不是NDISWAN),下面和网卡接口,同时向上还提供一个和应用程序接口(如拨号界面、参数等)。
不过我觉得这样做好难!首先不知道如何和上面的IP接口,同时也不知道中间层驱动如何和应用程序接口。
我都被逼疯了!
mikeluo
驱动老牛
驱动老牛
  • 注册日期2001-09-04
  • 最后登录2007-05-07
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望0点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
地下室#
发布于:2003-07-23 09:34
最麻烦的部分是实现ppp,剩下的都很简单。
一个虚拟网卡加协议就什么都解决了,甚至不用协议也可以。方式很多。你还是先看ppp和pppoe的rfc吧,那些是体力活。
学而不思则罔,思而不学则殆 学而思之,思而学之,岂非圣人乎?
peakame
驱动牛犊
驱动牛犊
  • 注册日期2002-06-28
  • 最后登录2013-08-07
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望0点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
5楼#
发布于:2003-07-23 09:42
请问mikeluo:“虚拟网卡加协议”是怎样的?能讲详细点吗?
我对NDIS也不是特别熟,用中间层能实现你说的“虚拟网卡加协议”吗?它们如何实现?
我读过PPPoE的RFC,PPP的RFC还没读完,感觉PPP好罗嗦!
mikeluo
驱动老牛
驱动老牛
  • 注册日期2001-09-04
  • 最后登录2007-05-07
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望0点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
6楼#
发布于:2003-07-23 09:58
中间层只能起到协议的作用,不能做虚拟网卡,用中间层不是一个好方式,还是单做一个虚拟网卡的驱动,协议部分可以做一个协议驱动。具体的还是慢慢看ddk,对ndis结构有了了解以后才好。
学而不思则罔,思而不学则殆 学而思之,思而学之,岂非圣人乎?
peakame
驱动牛犊
驱动牛犊
  • 注册日期2002-06-28
  • 最后登录2013-08-07
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望0点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
7楼#
发布于:2003-07-23 15:38
请问mikeluo,有这方面的例子程序吗?我感觉你的想法不错,但我还是不大明白具体的做法,比如说如何来做虚拟网卡、如何做协议驱动,还有除了DDK外还有其它的资料吗?老板逼得紧,而DDK又浩如烟海,实在是难呀!
最好是哪位做过类似的工作的给出一些实现的例程,这样可能理解起来快些!先谢谢各位了!
peakame
驱动牛犊
驱动牛犊
  • 注册日期2002-06-28
  • 最后登录2013-08-07
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望0点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
8楼#
发布于:2003-07-28 22:58
苦读了和协议相关的DDK,知道一些协议驱动的写法,到现在还不甚明白mikeluo所说的协议驱动和虚拟网卡的绑
定关系?他们如何绑定?
另外如果仅仅用中间层(简单说用mtpppoe源码,或者接合自己实现PPP协议或者使用系统自带的PPP协议)能否
实现我说的要求(用自己的界面进行参数配置),如果能的话,该如何考虑这个问题?
如果用中间层不行的话?又该如何考虑这个问题?

   +----------------------------------+
   |                                  |
   |       我们自己写的PPPoE界面      |
   |                                  |
   +----------------------------------+
               |                      User mode
------- | -----------
               |
   +----------------------------------+
   |                                  |
   |        PPP+PPPoE驱动            |
   |                                  |
   +----------------------------------+
                                 Kernel Mode
--------------------

[编辑 -  7/28/03 by  peakame]
peakame
驱动牛犊
驱动牛犊
  • 注册日期2002-06-28
  • 最后登录2013-08-07
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望0点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
9楼#
发布于:2003-07-28 23:05
恳请大家多多帮助,我的QQ:56984291,恭候大家的指教,谢谢!
游客

返回顶部