第1章 引言
1.1 OSI参考模型
1.1.1 物理层
1.1.2 数据链路层
1.1.3 网络层
1.1.4 传输层
1.1.5 会话、表示和应用层
1.1.6 网络通信
1.2 通信设备
1.3 软件构件类型
1.3.1 协议软件
1.3.2 基础软件和系统软件
1.4 设计考虑——序曲
1.5 小结
1.6 阅读材料
1.7 习题
第2章 通信系统软件考虑
2.1 基于主机的通信
2.1.1 用户模式与核心模式
2.1.2 主机网络接口
2.1.3 STREAMS结构
2.1.4 套接字接口
2.1.5 基于主机的联网软件存在的问题
2.2 嵌入式通信软件
2.2.1 实时操作系统
2.2.2 存储问题
2.2.3 设备问题
2.2.4 软/硬件划分
2.2.5 硬件加速
2.2.6 控制板和数据板
2.2.7 为硬件加速开发软件
2.3 小结
2.4 阅读材料
2.5 习题
第3章 软件划分
3.1 严格分层方法的局限性
3.2 任务与模块
3.2.1 进程与任务的比较
3.2.2 任务实现
3.2.3 任务调度
3.3 模块与任务分解
3.4 划分案例研究——第二层交换器
3.4.1 设备驱动程序
3.4.2 协议功能
3.4.3 系统与管理任务
3.4.4 硬件加速
3.5 第三层交换器/路由器
3.6 模块与任务接口
3.6.1 函数/过程接口
3.6.2 消息/事件接口
3.6.3 标准接口与专用接口
3.7 小结
3.8 阅读材料
3.9 习题
第4章 协议软件
4.1 协议实现
4.1.1 状态机
4.1.2 协议数据单元(PDU)处理
4.1.3 协议接口
4.1.4 配置与控制
4.1.5 系统启动
4.1.6 协议升级
4.2 小结
4.3 阅读材料
4.4 习题
第5章 表与其它数据结构
5.1 表
5.2 结构/表的划分
5.2.1 控制块
5.2.2 接口控制块
5.3 实现
5.3.1 控制块分配与初始化
5.4 访问加速
5.4.1 访问方法优化
5.4.2 硬件支持
5.4.3 高速缓冲
5.5 表大小的调整
5.6 表访问例程
5.7 小结
5.8 阅读材料
5.9 习题
第6章 缓冲区与定时器管理
6.1 缓冲区管理
6.1.1 全局缓冲区管理
6.1.2 局部缓冲区管理
6.1.3 单缓冲池和多缓冲池
6.1.4 缓冲区大小
6.1.5 缓冲池及缓冲区大小选择对照单
6.1.6 伯克利系统发布(BSD)的mbuf库
6.1.7 STREAMS缓冲区方案
6.1.8 缓冲区方案之比较
6.1.9 缓冲区管理方案范例
6.1.1 0缓冲区管理中的异常条件
6.2 定时器管理
6.2.1 任务各自进行自己的定时管理
6.2.2 差值定时器计数的使用
6.2.3 定时器管理任务
6.3 小结
6.4 阅读材料
6.5 习题
第7章 管理软件
7.1 设备管理
7.2 管理方案
7.3 路由器管理
7.3.1 SNMP管理
7.3.2 基于CLI的管理
7.3.3 基于HTTP的管理
7.4 管理子系统体系结构
7.4.1 SNMP的使用
7.4.2 CLI的使用
7.5 代理与协议间的接口
7.5.1 代理与协议之间的内存分离
7.6 设备到管理程序的通信
7.7 系统建立与配置
7.7.1 引导参数配置
7.7.2 引导后配置
7.8 配置的保存与恢复
……
第8章 多板通信软件的设计
第9章 通信软件的开发
附录
参考文献