EDN China > 技术文章 > 嵌入式系统 > 开发工具 > 正文
? 2016博客大赛-不限主题,寻找电子导师,大奖升级??

(多图) 嵌入式操作系统VxWorks下PPPoE的实现

来源:国外电子元器件/作者:中兴通讯股份有限公司 徐善鹏?? 2007年12月27日 ?? 收藏0

  1 前言

  在目前的通信市场,宽带逐渐增温,接入方式呈现多样性:LAN、ADSL、HFC Cable Modem、WLAN各有一定的市场份额,而ADSL是全球范围内占据主流地位的宽带接入方式,它能够提供最低512 kHz,最高8 MHz的带宽。用户可以独享带宽,不会因为上网人数的增加而导致上网速率的降低。更为重要的是ADSL价格低廉,能为普通消费者所接受。目前国内的各大运营商和宽带接入提供商正在如火如荼地进行宽带革命。中国电信推出“ADSL网络快车”,并且已经圈定了大规模的用户群;中国网通也有类似的市场规模。另一方面,VoIP语音业务也飞速发展。目前国内大多数VoIP语音接入终端多为LAN方式。主要用户对象集中于智能化小区、校园、话吧等。由于大多数家庭用户的宽带接入为ADSL方式,运营商不得不考虑到目前的ADSL用户对VoIP语音业务的需求。所以,如果VoIP的终端设备支持PP-PoE的接入方式,只要将VoIP的终端设备挂到AD-SLMODEM下就可以提供VoIP语音业务。VoIP终端设备的软件大多都基于嵌入式操作系统。VxWorks是WRS(Wind River Syste

ms Inc.)推出的嵌入式实时操作系统。VxWorks以无可比拟的高效能、高可靠性、高效的调试工具和稳定、高效的网络协议等优点在高端通信市场占据了优势地位,太多数通讯设备都采用VxWorks作为操作系统。本文详细介绍PPP、PPPoE协议在VxWorks下的具体实现。

  2 PPP和PPPOE协议

  IP接入的功能包括动态IP地址分配、AAA和ISP动态选择,实现这些功能通常需要用到一个著名的接入协议即PPP协议,PPP协议是一成熟的IP接入协议,支持多种协议封装,实现简单,易于与现有的ISP配合。它具有链路层和网络层配置和协商功能,可方便地自动分配TP。PPP本身也是一个数据链路层协议,它可采用不同的传输机制传送。常用的有HDLC、ATM和以太网。承载在以太网上的称为PPPoE(PPP over Ethernet)。

  2.1 PPPoE协议

  RFC2516定义了一种在以太网上传送PPP的方法即PPPoE。PPPoE分为二个阶段,即Discovery(地址发现)阶段和PPP会话阶段。当某个主机希望发起一个PPPoE会话时,它必须首先执行Discovery来确定对方的以太网MAC地址并建立起一个PP-PoE会话标识符SESSION_ID。虽然PPP定义的是端到端的对等关系,Discovery却是天生的一种客户端-服务器关系。在Discovery的过程中,主机(作为客户端)发现某个访问集中器(Access Concentrator,作为服务器),根据网络的拓扑结构,主机能够与不只一个的访问集中器通信。Discovery阶段允许主机发现所有的访问集中器并从中选择一个。当Discovery阶段成功完成后,主机和访问集中器二者都具备了用于在以太网上建立点到点连接所需的所有信息。

  (1)PPPoE的帧格式和种类

  Discovery阶段所有的以太网帧的ETHER_TYPE域都设置为0x8863。PPP会话阶段以太网帧的ETHER_TYPE域都设置为0x8864。PPPoE的payload部分包含O个或多个TAG。一个TAG是一个TLV(type-length-value)结构,TAG_TYPE域为16位值(网络字节序),RFC2516标准附录A列出了各种TAG_TYPE和TAG_VALUE。PPPoE的帧格式如图l所示。

PPPoE的帧格式图

  PPPoE discovery阶段有5种基本的帧,分别为PPPoE Active Discovery Initiation (PADI)、PPPoE Active Discovery Offer(PADO)、PPPoE Active Discovery Request (PADR)、PPPoE Active Discovery Sessionconfirmation (PADS)、PPPoE Active Discovery Terminate(PADT)。

  (2)PPPoE的工作流程

  PPPoE包含二个阶段:Discovery搜索阶段和Session会话阶段。PPPoE Discovery的主要步骤为:

  ●主机发送PADl分组,其目的地址为广播地址,会话IAD为0(未分配);

  ●任一接入服务器收到PADI并任提供所需的服务时,就回送PADO分组,会话IAD为O;

  ●主机可能收到多个PADO,根据服务及其提供的服务选定一个服务器,然后向该服务器发送PADR分组,其目的地址为该服务器的单播地址。会话ID为0(未分配);

  ●该服务器收到PADR后生成一个唯一的会话ID,向主机回送PADS分组,准备启动PPP。


上一页123下一页
?? ?? ??


打开微信“扫一扫”,打开网页后点击屏幕右上角分享按钮

1.扫描左侧二维码
2.点击右上角的分享按钮
3.选择分享给朋友
?? ??

PPPoE? VxWorks? 嵌入式操作系统?

相关文章

我来评论
美国的游客
美国的游客 ??? (您将以游客身份发表,请登录 | 注册)
?
有问题请反馈