1.. SPDX-License-Identifier: GPL-2.0 2 3.. include:: ../disclaimer-zh_CN.rst 4 5:Original: Documentation/networking/generic-hdlc.rst 6 7:翻译: 8 9 孙渔喜 Sun yuxi <sun.yuxi@zte.com.cn> 10 11========== 12通用HDLC层 13========== 14 15Krzysztof Halasa <khc@pm.waw.pl> 16 17 18通用HDLC层当前支持以下协议: 19 201. 帧中继(支持ANSI、CCITT、Cisco及无LMI模式) 21 22 - 常规(路由)接口和以太网桥接(以太网设备仿真)接口 23 可共享同一条PVC。 24 - 支持ARP(内核暂不支持InARP,但可通过实验性用户空间守护程序实现, 25 下载地址:http://www.kernel.org/pub/linux/utils/net/hdlc/)。 26 272. 原始HDLC —— 支持IP(IPv4)接口或以太网设备仿真 283. Cisco HDLC 294. PPP 305. X.25(使用X.25协议栈) 31 32通用HDLC仅作为协议驱动 - 必须配合具体硬件的底层驱动 33才能运行。 34 35以太网设备仿真(使用HDLC或帧中继PVC)兼容IEEE 802.1Q(VLAN)和 36802.1D(以太网桥接)。 37 38 39请确保已加载 hdlc.o 和硬件驱动程序。系统将为每个WAN端口创建一个 40"hdlc"网络设备(如hdlc0等)。您需要使用"sethdlc"工具,可从以下 41地址获取: 42 43 http://www.kernel.org/pub/linux/utils/net/hdlc/ 44 45编译 sethdlc.c 工具:: 46 47 gcc -O2 -Wall -o sethdlc sethdlc.c 48 49请确保使用与您内核版本匹配的 sethdlc 工具。 50 51使用 sethdlc 工具设置物理接口、时钟频率、HDLC 模式, 52若使用帧中继还需添加所需的 PVC。 53通常您需要执行类似以下命令:: 54 55 sethdlc hdlc0 clock int rate 128000 56 sethdlc hdlc0 cisco interval 10 timeout 25 57 58或:: 59 60 sethdlc hdlc0 rs232 clock ext 61 sethdlc hdlc0 fr lmi ansi 62 sethdlc hdlc0 create 99 63 ifconfig hdlc0 up 64 ifconfig pvc0 localIP pointopoint remoteIP 65 66在帧中继模式下,请先启用主hdlc设备(不分配IP地址),再 67使用pvc设备。 68 69 70接口设置选项: 71 72* v35 | rs232 | x21 | t1 | e1 73 - 当网卡支持软件可选接口时,可为指定端口设置物理接口 74 loopback 75 - 启用硬件环回(仅用于测试) 76* clock ext 77 - RX与TX时钟均使用外部时钟源 78* clock int 79 - RX与TX时钟均使用内部时钟源 80* clock txint 81 - RX时钟使用外部时钟源,TX时钟使用内部时钟源 82* clock txfromrx 83 - RX时钟使用外部时钟源,TX时钟从RX时钟派生 84* rate 85 - 设置时钟速率(仅适用于"int"或"txint"时钟模式) 86 87 88设置协议选项: 89 90* hdlc - 设置原始HDLC模式(仅支持IP协议) 91 92 nrz / nrzi / fm-mark / fm-space / manchester - 传输编码选项 93 94 no-parity / crc16 / crc16-pr0 (预设零值的CRC16) / crc32-itu 95 96 crc16-itu (使用ITU-T多项式的CRC16) / crc16-itu-pr0 - 校验方式选项 97 98* hdlc-eth - 使用HDLC进行以太网设备仿真. 校验和编码方式同上 99 as above. 100 101* cisco - 设置Cisco HDLC模式(支持IP、IPv6和IPX协议) 102 103 interval - 保活数据包发送间隔(秒) 104 105 timeout - 未收到保活数据包的超时时间(秒),超过此时长将判定 106 链路断开 107 108* ppp - 设置同步PPP模式 109 110* x25 - 设置X.25模式 111 112* fr - 帧中继模式 113 114 lmi ansi / ccitt / cisco / none - LMI(链路管理)类型 115 116 dce - 将帧中继设置为DCE(网络侧)LMI模式(默认为DTE用户侧)。 117 118 此设置与时钟无关! 119 120 - t391 - 链路完整性验证轮询定时器(秒)- 用户侧 121 - t392 - 轮询验证定时器(秒)- 网络侧 122 - n391 - 全状态轮询计数器 - 用户侧 123 - n392 - 错误阈值 - 用户侧和网络侧共用 124 - n393 - 监控事件计数 - 用户侧和网络侧共用 125 126帧中继专用命令: 127 128* create n | delete n - 添加/删除DLCI编号为n的PVC接口。 129 新创建的接口将命名为pvc0、pvc1等。 130 131* create ether n | delete ether n - 添加/删除用于以太网 132 桥接帧的设备设备将命名为pvceth0、pvceth1等。 133 134 135 136 137板卡特定问题 138------------ 139 140n2.o 和 c101.o 驱动模块需要参数才能工作:: 141 142 insmod n2 hw=io,irq,ram,ports[:io,irq,...] 143 144示例:: 145 146 insmod n2 hw=0x300,10,0xD0000,01 147 148或:: 149 150 insmod c101 hw=irq,ram[:irq,...] 151 152示例:: 153 154 insmod c101 hw=9,0xdc000 155 156若直接编译进内核,这些驱动需要通过内核(命令行)参数配置:: 157 158 n2.hw=io,irq,ram,ports:... 159 160或:: 161 162 c101.hw=irq,ram:... 163 164 165 166若您的N2、C101或PLX200SYN板卡出现问题,可通过"private" 167命令查看端口数据包描述符环(显示在内核日志中) 168 169 sethdlc hdlc0 private 170 171硬件驱动需使用#define DEBUG_RINGS编译选项构建。 172在提交错误报告时附上这些信息将很有帮助。如在使用过程中遇 173到任何问题,请随时告知。 174 175获取补丁和其他信息,请访问: 176<http://www.kernel.org/pub/linux/utils/net/hdlc/>.