应用笔记 4124

DS33X162产品线的FAQ

By: Arthur Harvey

摘要 : 本应用笔记是DS33X162 EoPDH以太网映射器产品线的常见问题解答(FAQ)。DS33X162产品线可以应用于运营级以太网、以太分界设备、以太网接入、MSPP、DSLAM、ROADM、微波通信、WAN路由器以及以太汇聚应用。它们支持GFP、VCAT和LCAS等用来将以太数据汇聚于PDH链路的协议。

应用问题
针对我的应用应该选择那个芯片?
什么是打包和拆包技术?
我的设备中需要支持EVC,它们和VCG有什么区别?
什么是EoPDH,它和DSL有什么不同?
HDLC和GFP包的区别是什么?
DS33X161/DS33X162可以发送数据到16个不同地点的16个远端节点吗?
用DS33X162来连接四个不同的远端节点,它的流量传送机制和采用一个便宜的四端口以太网交换机一样吗?
DS33X162产品线可以和DS33R41或者DS33Z41连接吗?
DS33X162产品线可以和DS33Z11、DS33R11或者DS33Z44连接吗?
在使用DS33X162产品线的过程中是否需要外部的成帧器和线路接口单元?
为什么在大多数情况下需要有多帧同步信号?
芯片会增加多少帧延时?
芯片支持何种以太流量控制?
在我的应用中应该使用以太流量控制吗?
我可以限制面向以太网接口的带宽大小吗?
我可以将芯片应用于“分出并继续”的情况吗?

硬件设计问题
可以提供参考设计吗?
应该采用何种电源耦合方式?
对于DDR SDRAM接口总线有什么特殊的布线要求吗?

软件设计问题
数据流程中需要处理器多大程度的支持?
在传输之前芯片会对WAN端口插入帧做哪些处理呢?
可以提供WAN插入帧的例子吗?
可以提供LAN插入帧的例子吗?
芯片如何应用于以太网OAM?
如何给芯片指定一个以太(MAC)地址呢?
如何给芯片指定一个IP地址呢?
如何实现高层协议比如SNMP呢?
每一个队列都会有内部填充水平指示吗?

应用问题

Q) 针对我的应用应该选择那个芯片?

A) 从DS33X162产品线的9款产品中选择一个合适的芯片初看起来似乎很难,但是在应用的基础上根据一些简单的标准通常就可以选出最佳的芯片。

如果应用是点对点的系统,或者“末端的方案”,那么通常只需要一个封装器,这样就可以将选择范围缩小到DS33X11,DS33X41,DS33X81,DS33X161和DS33W11。如果应用是点对多点,“多点落地”,“分出并继续”或者网状系统,此时可能会需要不止一个封装器,DS33X42和DS33W41都具有两个封装器,每一个封装器都可以作为点对点数据通路的一个端接点; DS33X82和DS33X162都具有四个封装器,因此可以发起/终止四个点对点的WAN数据通路。

VCAT/LCAS协议可以容许WAN数据通路在多条T1/E1或DS3/E3链路上进行传送,那么下一个需要注意的应用需求就是:对于每个WAN数据通路需要多少和何种类型的TDM链路? 对这个问题的回答一般可以将芯片的选择缩小至具有合适端口数的器件,比如,如果需要一个带16个E1链路的单一WAN通路,那么可用的方案就是DS33X161和DS33X162;如果需要两个各带8个E1链路的WAN通路,那么唯一可用的方案就是DS33X162;如果需要4个DS3链路,那么可用的方案可以是:DS33X41,DS33X42,DS33X81,DS33X82,DS33X161和DS33X162。

第三个要考虑的选取标准是系统中需要的以太接口,DS33X42,DS33X82和DS33X162支持一个1000Mbps或者两个10/100Mbps接口,DS33X11,DS33W11,DS33X41,DS33W41,DS33X81和DS33X162支持一个10/100/1000Mbps接口。对于所有的芯片,如果需要额外的以太网端口可以使用外部的以太网交换芯片。还值得一提的是DS33X11使用一种PCB封装,DS33W11和DS33W41使用一种PCB封装,而其它所有的器件都采用同一种封装。这样就可以在系列芯片中轻松搬移设计或者对不同的PCB焊接选择采用同一个设计方案。

产品线中各芯片的差异可以查阅数据手册中的表1-1。

Q) 什么是打包和拆包技术?

A) 打包就是用来处理以太网LAN端口的帧以便其在WAN网络上传输的电路;拆包则实现相反的功能,它会接收来自WAN端口的打包帧,处理后以便其在以太LAN上传输。在DS33X162产品线中,打包和拆包还执行一系列报文处理功能,比如插入/去除信息以及设定流量的优先级。在WAN连接的两端必须都有成对的打包/拆包装置。通过虚拟级联(VCAT)协议,一个打包数据可以在多个物理PDH链路上传送,这样可以提高吞吐率并减小延时,实现这一功能所需的链路绑定在VCAT层面就是虚拟级联组(VCG)。打包器支持VCG。

Q) 我的设备中需要支持EVC,它们和VCG有什么区别?

A) 以太网虚拟连接(EVC)是用来提供以太网服务的两点间的连接,通常是两个物理以太网接口。只有属于EVC的帧才会被传送到EVC的每个端点。基于DS33X162产品线的设备每个封装器在一般情况下至少可以支持一个EVC,一个虚级联组(VCG)或者一个链路用来传送EVC。对更多EVC的支持可以通过外加以太网交换机实现,交换芯片需要根据服务的物理端口支持VLAN标签。

Q) 什么是EoPDH,它和DSL有什么不同?

A) EoPDH是本原以太网(2层)帧在准同步数字序列(PDH)上的传输,PDH包括T1/E1和DS3/E3链路。xDSL系统一般不认为是PDH网络的一部分。另外,传统的入户xDSL系统只传送三层的IP数据报,并会阻止在其上运行诸如ARP,BPDU,RSPT或以太OAM等二层协议。想要更多了解EoPDH技术,请参阅应用笔记3849:"Ethernet-over-PDH技术概要"。

Q) HDLC和GFP包的区别是什么?

A) HDLC包在传统系统中已经使用了几十年。但是,当用于标识帧的开始和结束的“标志序列”本身就是传输数据时,HDLC会碰到一些问题。HDLC必须用更长的无冲突序列来取代冲突序列。在最差情况下,这会浪费预计带宽的50%。GFP通过采用带错误纠正的长度指示头来避免这个问题。因为这个可预知的开销,GFP通常是新系统中更受欢迎的一种打包方式。DS33X162产品线同时支持HDLC和GFP。

Q) DS33X161/DS33X162可以发送数据到位于16个不同地点的16个远端节点吗?

A) 不可以。因为DS33X162包含有四个封装器,所以每个DS33X162可以通信的独立远端节点数目最多是四个。如果需要的WAN通路超过四个,则需要采用一个外部的以太网交换机。

Q) 用DS33X162来连接四个不同的远端节点,它的流量传送机制和采用一个便宜的四端口以太网交换机一样吗?

A) 不一样。DS33X162采用VLAN标签信息将帧转送至封装器,现今的企业环境中使用的以太网交换机大部分只是采用并不完善的学习和过滤机制来处理以太网目标地址信息,以此实现流量的转送。这种并不完善的机制会导致有些数据偶尔会被广播到所有端口,也就是说,某个用户的数据会被送给非相干的接收者,引起安全和隐私问题。DS33X162采用的VLAN转送机制可以实现定义明确的数据流量,保证在特定的物理通路上管理用户数据。

Q) DS33X162产品线可以和DS33R41或者DS33Z41互连吗?

A) 不可以。DS33R41和DS33Z41采用私有的反向复用协议。DS33X162产品线采用ITU标准的VCAT/LCAS协议,这两种协议并不兼容。

Q) DS33X162产品线可以和DS33Z11、DS33R11或者DS33Z44互连吗?

A) 可以。DS33X162产品线具有在单一PDH连接上传输旧有HDLC的操作模式,它所采用的协议和DS33Z11,DS33R11以及DS33Z44的相同。DS33X162产品线的版本A1不支持这种功能,但是之后的所有版本都支持这一旧有HDLC协议。

Q) 在使用DS33X162产品线的过程中是否需要外部的成帧器和LIU?

A) 在大部分应用中,需要使用外部的T1/E1或者DS3/E3成帧器和线路接口单元来提供多帧同步信号,一个例外是在单物理链路上点对点传送比特填充的HDLC。DS33X162产品线可以与Maxim公司的单片收发器和成帧器无缝对接。

Q) 为什么在大多数情况下需要有多帧同步信号?

A) Ethernet-over-PDH标准具有定位的需要,只有采用多帧定位信号才能达到要求。

Q) 芯片会增加多少帧延时?

A) 在连续未超过设定的条件下末一位入到第一位出的帧延时小于100µs,在超过设定值的情况下,帧延时依赖于很多因素,很难简单的判定。相对于低优先级的帧,芯片严格的优先级和轮叫帧调度算法可以用来减低高优先级帧的延时。

Q) 芯片支持何种以太流量控制?

A) DS33X162对全双工和半双工操作都支持IEEE® 802.3兼容的流量控制。流量控制是可配置的,也可以被禁用。

Q) 在我的应用中应该使用以太流量控制吗?

A) 在一些应用中,以太网的二层流量控制会影响到高层的流量控制协议。比如,TCP/IP流量控制利用丢失帧来检测何时超过了系统的带宽。TCP/IP流量控制不断增加流速直到发现有帧丢失,在维持一个稳定的流量之前它会根据丢失帧的数量采用备份和重发算法不断调整。如果没有帧丢失,TCP/IP会不断的试图增加流速。如果把TCP/IP流量控制和以太流量控制一起使用,可能会有意想不到的结果发生。系统架构师应该在整个系统的基础上仔细研究流量控制的作用,这样才能确定系统是否需要使用以太流量控制或者帧丢弃。

Q) 我可以限制面向以太网接口的带宽大小吗?

A) 是的。通过使用承诺信息速率(CIR)控制器,你可以对以太网接口的带宽大小进行编程,可以从0Mbps到PDH线路速率的范围内对它进行动态调整。

Q) 我可以将芯片应用于“分出并继续”的情况吗?

A) 是的。DS33X82和DS33X162芯片支持一些基于VLAN ID信息的复杂配置。

硬件设计问题

Q) 可以提供参考设计吗?

A) 是的。请通过 (English only)联络技术支持索取最新的参考设计信息。

Q) 应该采用何种电源耦合方式?

A) 根据电源上呈现的噪声不同需要的耦合数量也不同,但是下面是一些通用的去耦和布线建议:
  1. 在芯片的每个电源输入端至少放置一个0.1µF的陶瓷电容;
  2. 去耦电容应尽量放置地靠近芯片的电源管脚;
  3. 不要与其他电容共享到电源和地的过孔;
  4. 对于指定电压选用封装最小的电容;
  5. 与电源平面的连接走线要尽量地宽;
  6. 不要分割平面,保持高频平面贴近与高速的器件;
  7. 电路板上的每一个电源输入至少使用一颗4.7µF的钽电容。
Q) 对于DDR SDRAM接口总线有什么特殊的布线要求吗?

A) 是的。DDR SDRAM的走线在长度和阻抗上要尽量地匹配。应该避免信号的分支。芯片支持P2P模式,这可以简化线路端接电路。进一步的布线问题可以通过 (English only)联络技术支持工程师得到答复。

软件设计问题

Q) 数据流程中需要处理器多大程度的支持?

A) 对于普通的用户流量,不需要主处理器的交互,芯片的数据和控制层面是完全分开的。当配置完成后,主处理器只需要检测状态和中断,在必要的时候做出响应。用户可以选择采用芯片的捕获、提取和插入功能来实现管理协议或者执行其它功能,在这种情况下,为了主处理器处理的需要,达到用户编程的特定条件的帧会在数据层面和控制层面间交互数据。根据特定协议或者应用实现的不同,对主处理器的处理要求也不同。

Q) 在传输之前芯片会对WAN端口插入帧做哪些处理呢?

A) 当传输帧被放置到WAN端口的插入FIFO后,芯片会管理基本的帧定界功能并容许用户对其它功能进行编程。在HDLC模式,芯片会自动插入HDLC开始/停止标志位,在GFP模式,芯片会插入GFP净荷长度和cHEC值。在放置到WAN端口插入FIFO之前,用户程序必须完成封装CRC值,GFP类型头,GFP扩展头,VLAN标签或者其它帧的调整。

比如,假定要插入带cHDLC封装的WAN帧,用户软件必须在开始以太帧之前插入cHDLC 4byte的地址,控制以及协议头字节,然后将完成后的数据写入WAN端口插入FIFO。下面的cHDLC例子简要描述了整个报文和将要写入WAN端口插入FIFO的数据。

Q) 可以提供WAN插入帧的例子吗?

A) 下面是一个WAN插入帧的例子:
Encode: cHDLC
Length: 4 HDLC + 132 Ethernet
H HDR:  Cisco HDLC Unicast IP (0F 00 80 00)
MAC DA: Internet Multicast (01 00 5E 7F FF FF)
MAC SA: Dallas Semiconductor (00 60 35 12 34 56)
VLAN:   PRI 0, CFI 0, VID 2047 (81 00 07 FF)
Type:   IP (08 00)
E HDR:  45 00 00 6E 00 00 00 00 40 72 EB 2E
Net SA: 198.019.001.100 (C6 13 01 64)
Net DA: 198.019.001.101 (C6 13 01 65)
Data:   AA + Analysis Data
E FCS:  84 96 3B 14

0F 00 08 00 01 00 5E 7F FF FF 00 60 35 12 34 56 
81 00 07 FF 08 00 45 00 00 6E 00 00 00 00 40 72 
EB 2E C6 13 01 64 C6 13 01 65 AA AA AA AA AA AA 
AA AA AA AA AA AA AA AA AA AA AA AA AA AA AA AA 
AA AA AA AA AA AA AA AA AA AA AA AA AA AA AA AA 
AA AA AA AA AA AA AA AA AA AA AA AA AA AA AA AA 
AA AA AA AA AA AA AA AA AA AA AA AA AA AA AA AA 
AA AA 00 04 20 01 00 08 00 00 00 00 2F 78 D4 F4 
D0 87 2B 0B 84 96 3B 14
Q) 可以提供LAN插入帧的例子吗?

A) 下面是一个LAN插入帧的例子:
Destination Address: 00:45:54:48:5f:30
Source Address: 00:0e:7f:a5:65:c6 
Type: IP (0800)
IP version 4 (45) 
DiffServ = 00
Length =60 bytes (003c)
Identification (64ed)         
Flags & Fragment offset = 0 (0000)
Time to live=128 (80) 
Protocol = ICMP (01) 
Header Checksum (5480) 
Source IP = 192.168.0.2 (c0a80002)
Destination IP = 192.168.0.1 (c0a80001)
Begin ICMP message (0800)
ICMP Message: 
 97570200
 b4046162     :ICMP Message 
 63646566     :ICMP Message
 6768696a     :ICMP Message 
 6b6c6d6e     :ICMP Message 
 6f707172     :ICMP Message 
 73747576     :ICMP Message
 77616263     :ICMP Message 
 64656667     :ICMP Message 
 6869         :ICMP Message End
Ethernet FCS CRC-16 (870e)

00 45 54 48 5f 30 00 0e 7f a5 65 c6 08 00 45 00 
00 3c 64 ed 00 00 80 01 54 80 c0 a8 00 02 c0 a8
00 01 08 00 97 57 02 00 b4 04 61 62 63 64 65 66
67 68 69 6a 6b 6c 6d 6e 6f 70 71 72 73 74 75 76
77 61 62 63 64 65 66 67 68 69 87 0e
Q) 芯片如何应用于以太网OAM?

A) 芯片通过配置可以捕获范围在01:80:C2:xx:xx:xx的慢速协议帧,这就包括以太网OAM帧。所有在这个地址范围的帧都会被保存在FIFO中等待主处理器的提取。主处理器可以解析、释义并响应OAM信息。

Q) 如何给芯片指定一个以太(MAC)地址呢?

A) 通过软件来选择用来通信的以太(MAC)地址。与LAN提取相关的MAC地址可以通过SU.LEDAL、SU.LEDAM和SU.LEDAH寄存器设置,与WAN提取相关的MAC地址可以通过SU.WEDAL、SU.WEDAM和SU.WEDAH寄存器设置,这个地址可以和LAN端口的不同(或者相同)。

Q) 如何给芯片指定一个IP地址呢?

A) 几乎在所有的网络设备中,将以太地址与IP地址相关联是由被称为地址解析协议(ARP)的二层协议完成的。主处理器必须使用芯片的捕获和插入功能来作为通信路径,以此实现软件ARP代理。

Q) 如何实现高层协议比如SNMP呢?

A) 可以在DS33X162产品线上实现SNMP以及其他高层协议,这需要用户的软件开发,Maxim目前并不提供高层协议软件。DS33X162系列产品提供实现软件SNMP代理所需的硬件支持,它用来完成RMON MIB。特别的是,芯片可以捕获和插入单播帧(比如,指定给设备的以太帧地址)。一个“SNMP代理”就是运行在主处理器上的一段应用软件代码,可以用来处理SNMP帧。想要实现SNMP代理,用户需要开发(或者购买)在其微处理器上运行的一个最小的TCP/IP协议栈软件,包括ARP客户端。DS33X162还包含有RMON MIB所需的硬件计数器,SNMP代理应该能够在软件上处理SNMP消息,SNMP代理为了响应RMON信息而读取硬件计数器。客户也可以开发自己的SNMP MIB,这样就可以读取芯片的所有功能,包括远端配置和更复杂的状态信息。

Q) 每一个队列都会有内部填充水平指示吗?

A) 不是。在GbE应用中,填充值会以1Gbps的速率变化,因此对于慢的主处理器来讲填充值是没有意义的。但是,可以对剩余可用队列空间设置门限值,这样当队列空间小于某个特定值后就会引起中断。对于所有的LAN队列来讲,门限值是共用的。