深入理解Linux网络技术内幕

深入理解Linux网络技术内幕
作 者: 夏安 闫江毓 黄景昌
出版社: 中国电力出版社
丛编项:
版权说明: 本书为公共版权或经版权方授权,请支持正版图书
标 签: LINUX
ISBN 出版时间 包装 开本 页数 字数
未知 暂无 暂无 未知 0 暂无

作者简介

  Christian Benvenuti是一个专注于操作系统网络的设计者。他在《深入理解Linux网络技术内幕》一书中不仅解释了Linux代码如何工作,还阐述了主要网络特性的目的以及在不同解决方案间是如何抉择的。《深入理解Linux网络技术内幕》中还包含了大量的流程图和其他图表以帮助读者理解。

内容简介

Linux如此的流行正是得益于它的特性丰富及有效的网络协议栈。如果你曾经惊叹于Linux能够实现如此复杂的工作,或者你只是想通过现实中的例子学习现代网络,《深入理解Linux网络内幕》将会给你指导。同其他OReilly的流行书籍一样,《深入理解Linux网络内幕》清楚地阐述了网络的基本概念,并指导你如何用C语言实现。虽然早先的 TCP/IP经验是有用的,但初学者通过《深入理解Linux网络内幕》仍然可以学习到协议本身和大量的应用信息。一旦彻底掌握了这些网络工具,你就可以使用《深入理解Linux网络内幕》这本书所附的代码,准确地指出Linux内核中最重要的部分如何工作。网络功能的实现或破坏在不同的时候是由不同的代码块完成的,这正是理解网络和实现它的难点中的一部分。《深入理解Linux网络内幕》该书的成功之一就是描述这些代码块如何集成,以及众多的函数和数据结构之间的关系。《深入理解Linux网络内幕》不仅描述了Linux网络的全貌,而且是理解Linux网络细节的有效指南。

图书目录

前言

第一部分 基础背景

 第一章 简介

 基本术语

  常见编码模式

 用户空间工具

  浏览源代码

 当功能以补丁形式提供时

 第二章 关键数据结构

 套接字缓冲区:sk—buff结构

  net—device结构

  本章涉及的文件

 第三章 用户空间与内核的接

 概论

  procfs与sysctl

 ioctl

  Netlink

 配置改变串行化

第二部分 系统初始化

 第四章 通知链

使用通知链的原因

概论

定义链

链注册

链上的通知事件

网络子系统的通知链

通过/proc文件系统的调整

本章涉及的函数和变量

本章涉及的文件和目录

 第五章 网络设备初始化

 系统初始化概论

  设备注册和初始化

 NIC初始化的基本目标

  设备与内核之间的交互

 初始化选项

  模块选项

 设备处理层初始化:net—dev—init

 用户空间辅助程序

虚拟设备

通过/proc文件系统调整

本章涉及的函数和变量

本章涉及的文件和目录

 第六章 PCI层和网络接口卡

本章涉及的数据结构

PCI NIC设备驱动程序的注册

电源管理和网络唤醒

PCI NIC驱动程序注册范例

大蓝图

通过/proc文件系统调整

本章涉及的函数和变量

本章涉及的文件和目录

第七章 组件初始化的内核基础架构

引导期间的内核选项

模块初始化代码

优化宏卷标

引导期间初始化函数

内存最优化

通过/proc文件系统调整

本章涉及的函数和变量

本章涉及的文件和目录

第八章 设备注册和初始化

设备注册之时

设备除名之时

分配net—device结构

NIC注册和除名的架构

  设备初始化

 net—device结构的组织

  设备状态

  设备的注册和除名

  设备注册

  设备除名

  开启和关闭网络设备

  更新设备队列规则状态

  从用户空间配置设备相关信息

  虚拟设备

  上锁

 通过/proc文件系统调整

  本章涉及的函数和变量

  本章涉及的文件和目录

第三部分 传输和接收

 第九章 中断和网络驱动程序

 决策和流量方向

  接收到帧时通知驱动程序

 中断处理函数

  softnet—data结构

 第十章 帧的接收

  与其他功能交互

  设备的开启和关闭

  队列

  通知内核帧已接收:NAPI和netif_rx

  设备驱动程序与内核问的IB接口:netif_rx的第一部分

  拥塞管理

  处理NET_RX_SOFTIRQ:net_rxa_ction

 第十一章 帧的传输

 传输的开启和关闭

 第十二章 中断事件一般性参考数据

 统计数据

  通过/proc和sysfs文件系统调整

 本部分涉及的函数和变量

  本部分涉及的文件和目录

 第十三章 协议处理函数

 网络协议栈概论

  执行正确的协议处理函数

  协议处理函数的组织

  协议处理函数的注册

  Ethernet与IEEE 802.3帧

  通过/proc文件系统进行调整

 本章涉及的函数和变量

  本章涉及的文件和目录

第四部分 桥接

 第十四章 桥接:概念

 中继器、网桥以及路由器

  网桥与交换机

  主机

  用网桥合并LAN

  桥接不同技术的LAN

  地址学习

  多台网桥

 第十五章 桥接:生成树协议

  基本术语

  阶层交换式L2拓扑范例

  生成树协议的基本元素

  网桥ID和端口ID

  网桥协议数据单元(BPDU)

  定义活跃拓扑

 定时器

  拓扑变化

  BPDU封装

  传输配置BPDU

  处理入口帧

  收敛时间

  新版生成树协议概况

 第十六章 桥接:Linux实现

  网桥设备抽象

 重要的数据结构

 桥接程序的初始化

  建立网桥设备和网桥端口

  建立一个新网桥设备

  阿桥设备设置函数

  删除网桥

  给网桥添加端口

  启动和关闭网桥设备

  启动和关闭网桥端口

  改变网桥端口状态

  大蓝图

  转发数据库

  处理入口流量

 网桥设备上的传输

  生成树协议(STP)

  netdevice通知链

 第十七章 桥接:其他主题

 用户空间配置工具

  通过/proc文件系统调整网桥

  通过/sys文件系统调整网桥

  统计数据

  本部分涉及的数据结构

 本部分涉及的函数和变量

  本部分涉及的文件和目录

第五部分 因特网协议第4版(IPv4)

第六部分 邻居子系统

第七部分 路由