TA的每日心情 | 开心 24 分钟前 |
---|
签到天数: 235 天 [LV.7]常住居民III
管理员
- 积分
- 8328
|
Java电子书:精通Linux内核网络 PDF 电子书 Java吧 java8.com
" \* V- E3 D- A Y1 l! s- B$ s
作者:【以色列】罗森(Rami Rosen)出版社:人民邮电出版社出版时间:2015年06月) ?5 N; F# I! b. }; h W9 W' j j" v
8 X6 W2 A0 g# n$ g5 T' ?- @
编号:166-Java吧资源免费-X0220【Java吧 java8.com】' x+ D1 j- K, l
5 A K, f3 U ?, M
( o! `0 h+ {# w& H! W( n# |1 Y0 S, Z3 j
目录:2 G% @0 r; K8 v- o8 O- X1 s
第1章 绪论 1, y& @5 l/ M+ o* L$ E
1.1 Linux网络栈 26 F9 B7 f* t1 @
1.2 网络设备 4
! t* e! r( \8 W' a! o& g7 O1.2.1 网络设备中的NAPI 5
7 r9 l: `7 @. P% l3 B" Z# [% f1.2.2 数据包的收发 5
+ E7 b: J0 M/ |1.2.3 套接字缓冲区 7& Z; v% A: R. m+ r+ [ C% x' O
1.3 Linux内核网络开发模型 100 x \/ g- N6 z
1.4 总结 12
! w" o! M: p$ }) y% \- x [ I第2章 Netlink套接字 13
+ K3 v# w) N4 @4 G6 X/ I% P' B( @2.1 Netlink簇 13
W$ e$ E' Z7 a3 U, i2.1.1 Netlink套接字库 159 t: m! n- v$ q
2.1.2 结构sockaddr_nl 15 Q# B$ A* u/ r1 ?! {& s0 N* @; M
2.1.3 用于控制TCP/IP联网的用户
/ H, H2 |8 O: }/ c+ _$ S! j空间包 15
7 F5 ^+ K* h* t2 [2.1.4 内核Netlink套接字 167 K7 w; C! B a
2.1.5 Netlink消息报头 20# [0 U& {2 c2 Y& |5 W6 n1 @
2.1.6 NETLINK_ROUTE消息 22
5 `+ `' ^+ @9 H# f, M9 W2.1.7 在路由选择表中添加和删除0 D% M- k+ q( ~5 B* k% y
路由选择条目 24% r0 `* N0 {# ~. r+ V6 F
2.2 通用Netlink协议 25
3 N9 V, _: ^0 w2 T' z( f2.2.1 创建和发送通用Netlink消息 29
_/ V5 U. @4 N) T2.2.2 套接字监视接口 31$ q/ y, }' D, O6 l9 u$ z2 |
2.3 总结 32
% t; S; `* [/ v! y2.4 快速参考 32
$ I& A, @$ c: p! \第3章 Internet控制消息协议(ICMP) 36
e0 ~( ~7 f) ^! }; s; Q3.1 ICMPv4 36
& R$ `' c$ O+ o* K0 ]# u! K6 E3.1.1 ICMPv4的初始化 370 R9 N q+ ?0 _) r0 `
3.1.2 ICMPv4报头 380 D, ~9 n J; q7 v" B
3.1.3 接收ICMPv4消息 42; X3 o( f) F/ ~3 k9 V
3.1.4 发送ICMPv4消息:目的地
. k5 a: B I, M不可达 43
+ X8 i8 V1 G0 ?# V5 s) x3.2 ICMPv6 47
, z- `5 l- S6 j- N0 `6 W3.2.1 ICMPv6初始化 47
4 L; t& p: G) `; S- P( y: z3.2.2 ICMPv6报头 482 { t% K$ V3 m8 J/ y
3.2.3 接收ICMPv6消息 49' T% P8 n3 X! Y& G% u/ ]
3.2.4 发送ICMPv6消息 52' u$ o- V6 z- t! p/ E( w
3.3 ICMP套接字(ping套接字) 555 g+ A: B R. B) u& [
3.4 总结 56" S- |- L: q# L4 R! \
3.5 快速参考 56
+ f! f( y. y7 b2 D- O3.5.1 方法 565 u1 c1 R0 F; Y" W% [! Z J
3.5.2 表格 57
3 v+ m5 Z! E. s `3.5.3 procfs条目 58- I4 v. U5 M; e. V; f7 X
3.5.4 使用iptables创建“目的地1 j% Y% p! ^, ?. [
不可达”消息 59
, y# K- z( c/ g- Q( ]7 t第4章 IPv4 613 U# i4 g. H" o3 v G3 X" ^0 n
4.1 IPv4报头 62
: _" t+ w/ b. ~! ^# g8 z4.2 IPv4的初始化 63$ }3 { m7 _6 o- T. D6 Y# L& C+ K
4.3 接收IPv4数据包 64
9 p3 o0 N* m- w0 b4.4 接收IPv4组播数据包 67
: R7 w& }1 ?1 `8 ~/ l {) n* C4.5 IP选项 69, K$ H/ u% e o8 ~* N% n0 x
4.5.1 时间戳选项 71& t& M. Z$ [3 M
4.5.2 记录路由选项 74
3 j6 b2 @; T7 W4 c4.5.3 IP选项和分段 82. P" [6 ^/ h- } }+ m2 [" t! _! F' g3 W
4.5.4 创建IP选项 841 p# Z- P1 {/ t: b7 v
4.6 发送IPv4数据包 85
; F6 q# Z8 G0 S5 z3 H5 u9 [0 M. G4.7 分段 89
. {: j. r# T Z) B5 {+ X4.7.1 快速路径 90# Q0 S6 t l: m
4.7.2 慢速路径 93* }) ]3 n% U1 W7 G# g
4.8 重组 94
v+ c! {2 z; I4.9 转发 993 f5 {6 {8 p' b3 R
4.10 总结 101& U' w1 q! N$ L; M# o$ J, c9 g$ o
4.11 快速参考 1015 y! A2 d% u) w$ m( m
4.11.1 方法 102
9 I/ R" F$ A: |3 E. C9 T. }" m9 o4.11.2 宏 104
: C5 b4 K" N3 [- v4 S/ _第5章 IPv4路由选择子系统 105# b; X/ ~2 |4 ]9 e2 \
5.1 转发和FIB 105. r/ p0 v0 e9 Q# o% |9 s
5.2 在路由选择子系统中进行查找 1075 o/ Z4 _' Y* G& x: K& f2 P7 ~ x% ~1 t+ v
5.3 FIB表 110
4 N' l0 E H* P" S5.3.1 FIB信息 1100 ~9 Q6 A: l* t
5.3.2 缓存 1152 L$ H" `, i4 K/ T0 S
5.3.3 下一跳 115. R4 j2 |/ Y# X$ M4 l$ M
5.3.4 策略路由选择 1178 a, r4 J8 B, p4 s2 E8 Y
5.3.5 FIB别名 118: c( G( o/ y; ^
5.4 ICMPv4重定向消息 1213 r/ L$ v$ L# ]. l* r+ P& W
5.4.1 生成ICMPv4重定向消息 122
9 w- `: D# O: h& |) k2 f5.4.2 接收ICMPv4重定向消息 123; H% l% H# n @; o$ a5 d
5.4.3 IPv4路由选择缓存 125
^/ r/ d+ y& G+ g9 u) x& z5 H# D/ n5.5 总结 1261 K6 `( L' w: R: B' ]2 m5 ~8 N
5.6 快速参考 126
) m* g) n; t: K" o2 X2 v/ Z0 W) K( n5.6.1 方法 127$ K5 l' P# F! k! q' u% c
5.6.2 宏 128
) x s5 J( u. Z8 w5.6.3 表 128, o2 o) [( t9 Y" ~$ r+ z: ^& i
5.6.4 路由标志 129
! ]. q9 [* n2 {第6章 高级路由选择 131
& t/ V; s, Y+ r6.1 组播路由选择 1318 I: v2 A6 M( @( F r2 v) K9 _8 ^
6.1.1 IGMP 132
8 s( |' k! z/ V2 |1 C( ~6.1.2 组播路由选择表 133* S/ v, N+ \# d( y9 I
6.1.3 组播转发缓存(MFC) 134
/ B0 U7 z7 s4 H O( h* u6.1.4 组播路由器 136
# S/ J5 p( ?2 B/ X; z: M6.1.5 vif设备 137
# `, Z' m. Q0 e; V: Q0 F9 G& d+ p5 Z2 A( L6.1.6 IPv4组播接收路径 138$ o# Z5 p8 Q6 t6 U/ i" M. V
6.1.7 方法ip_mr_forward() 1410 ~4 f) O) }/ S- X
6.1.8 方法ipmr_queue_xmit() 1437 M6 s! q h( m2 x& I" s, `! C
6.1.9 方法ipmr_forward_finish() 145' s0 _$ q, h% a5 F9 K) Z o8 U
6.1.10 组播流量中的TTL 1460 d/ k- D ?4 | P2 S/ n9 O) J# y5 e; V
6.2 策略路由选择 146
9 `8 X7 T- H/ y2 w+ }3 g6.2.1 策略路由选择的管理 147
) f7 _, Q* p `* A6.2.2 策略路由选择的实现 147! [& s/ W( r% O1 _, T3 L8 K
6.3 多路径路由选择 148; ^3 U' P( I( F' k
6.4 总结 149
; f. p0 K' p W6 C6.5 快速参考 149+ C* p& H$ g* r6 g5 N; N
6.5.1 方法 1496 M3 D0 V$ s! C# v* D
6.5.2 宏 151
) e9 P, }. a: T; d* E6 o. s/ H8 K6.5.3 procfs组播条目 152
3 s: y! W1 z3 @2 o9 s3 s6.5.4 表 152
: Q5 l( d/ y X/ `' @0 X5 M7 q第7章 Linux邻接子系统 1538 W$ P$ R* d% q1 [5 Y
7.1 邻接子系统的核心 153
" q! ~5 Z2 W2 i# y' L+ U7.1.1 创建和释放邻居 160
2 b2 r" E9 r1 ?+ w7 y7.1.2 用户空间和邻接子系统之间" t; b% k0 v& [
的交互 161
, u. q: A5 b U( _' `9 R; }. z7.1.3 处理网络事件 1632 s( f% l/ ?) ?; m
7.2 ARP协议(IPv4) 163& u. T" J& l( B I) B. \4 S
7.2.1 ARP:发送请求 165
. b" _! P, j2 g, A7 }$ a, D7.2.2 ARP:接收请求和应答 168
M9 J8 ^+ r! f* M* p+ ]- P7.3 NDISC协议(IPv6) 174( ~% H q: H7 V2 N& U* {% N
7.3.1 重复地址检测(DAD) 174
7 M" C5 X# f# G9 u/ r6 K7 U7.3.2 NIDSC:发送请求 176
- o, l- @0 m6 {# V$ ^1 K- w7.3.3 NDISC:接收邻居请求和! s- d6 k& `* Y+ ^. |: r" t
通告 179
+ t9 i4 e* f0 @7 N% R7.4 总结 1851 @+ D# K' t4 E8 r
7.5 快速参考 186
% c! | ?$ V0 q8 J8 i$ A7.5.1 方法 186
9 g2 K+ H6 c4 y! U0 B O% d. p7.5.2 宏 189
2 L" ^% n+ U' F2 f7 ]% e+ p7.5.3 结构neigh_statistics 190
" b6 s5 F3 d8 ^6 i2 P/ u0 O" o7.5.4 表 191
0 l, ? [4 p2 R% S# h: @- n第8章 IPv6 192) ]* t$ x3 S& M4 j/ T# }
8.1 IPv6简介 192
' l J5 T( U1 S8 ^% x8.2 IPv6地址 193
/ X5 ]3 H0 ?: n. s: M% `8.2.1 特殊地址 193( j5 j9 \: C" k3 s" j8 g
8.2.2 组播地址 194. x" @) H9 n$ q7 f
8.3 IPv6报头 1951 J$ h: a2 Q3 K+ l' x$ S. G6 [1 D+ p
8.4 扩展报头 197 K1 M0 W( T% M% X- A6 `
8.5 IPv6初始化 199. E! p+ I* C3 \8 g4 O
8.6 自动配置 200
6 d5 V9 \+ Z6 k2 b* r! K8.7 接收IPv6数据包 201
8 u; f' V9 I6 K% ]0 `6 T8.7.1 本地投递 204* x, a, k. P! a0 q6 q4 L
8.7.2 转发 206/ `3 ~5 x2 H7 u( ^# m, n
8.8 接收IPv6组播流量 210
9 J% F' L c: b8 q: N, T- y5 Y; [8.9 组播侦听者发现(MLD) 211: l4 G( l3 v! t
8.9.1 加入和退出组播组 212/ a8 X6 R8 [ x5 F0 r( m8 c
8.9.2 MLDv2组播侦听者报告 215
" q2 B& @; M0 C$ z- ^- Z c( ^' U8.9.3 组播源过滤 215. i$ e; V1 m6 Y2 ~6 j
8.10 发送IPv6数据包 220
0 C4 t* E. \ [2 l# k! M( h G8.11 IPv6路由选择 221; a8 f7 r* @4 w: S
8.12 总结 221
& K% b. v; J7 }4 j' c8.13 快速参考 221
7 g$ Y6 F1 G) |* a* O7 m0 S1 U8.13.1 方法 221/ o; T# E! _* C* b- Z
8.13.2 宏 224, H6 h/ m3 C. s! u7 O0 Q1 l, y' X
8.13.3 表 224
L' c+ ?/ M; Q# l& @& j8.13.4 特殊地址 225
) X) o# S/ W6 g% G8.13.5 IPv6路由选择表的管理 226. v ~# N5 R1 B6 F
第9章 Netfilter 227
. }# c- c# {; T( i0 \/ H" d/ D* p* d9.1 Netfilter框架 227* y( m' W8 w* o5 u; _
9.2 Netfilter挂接点 228# u% r1 A/ [6 L N2 P6 a7 D) ]: R/ u/ i
注册Netfilter钩子回调函数 2296 H" f6 d ~8 @8 K
9.3 连接跟踪 230
! f2 G" v9 s, \) G3 }: R# X! \9.3.1 连接跟踪的初始化 231
0 }2 U: E7 g/ k9.3.2 连接跟踪条目 234
% D$ ~) Y- W0 B: x7 o$ ]9.3.3 连接跟踪辅助方法和期望
2 `6 O7 }* H1 `连接 2383 t( b" \+ k. b9 y; z! A0 @4 s
9.3.4 iptables 241
4 _( L' N# D7 e) \9.3.5 投递到当前主机 243) D7 e( K& p6 r/ W
9.3.6 转发数据包 245
& z" N' c8 @% E8 b4 l9.3.7 网络地址转换(NAT) 245
& V$ ? }# C. Y8 Z% E9.3.8 NAT钩子回调函数和连接. }3 t; @7 s" q' J g1 f& F
跟踪钩子回调函数 2474 E" c7 i0 b" X
9.3.9 NAT钩子回调函数 250
: ~8 a7 ]- B: v3 Y3 U( Q9.3.10 连接跟踪扩展 2529 U- z) w1 j( L: @. h
9.4 总结 253
, n7 a% L. ?' N, _# q5 A9.5 快速参考 253: B% {. g' l0 A" E' y0 A
9.5.1 方法 253
2 F; o8 V$ t- X0 _7 k; }0 N& \9.5.2 宏 255
5 n0 O3 X/ B; r3 T+ H6 h9.5.3 表 255
7 k. l" b1 d9 H9.5.4 工具和库 256
$ e! B8 j* I% t2 p2 D3 ^# a第10章 IPsec 257
/ A& r0 F+ h+ |1 R) ^10.1 概述 257
2 g p2 X) Q9 l8 S. q' a4 G10.2 Internet密钥交换(IKE) 257- W8 @, J" L; H9 E l1 X ~
10.3 IPsec和加密 259
' D5 K! F5 K6 L% Q9 T10.4 XFRM框架 259
! V( K, q$ w5 u3 b10.4.1 XFRM的初始化 260# S4 o) {5 ?+ u- H
10.4.2 XFRM策略 260
- S3 O. z# \8 f3 S+ W/ \" n) u10.4.3 XFRM状态(安全关联) 2638 w4 Q7 Z7 u, L' D+ G
10.5 IPv4 ESP的实现 266
6 i. ]+ T9 y5 h* I8 N3 `2 n! W10.6 接收IPsec数据包(传输模式) 268+ L7 E; Q/ }, @" ?# d
10.7 发送IPsec数据包(传输模式) 271$ M" _) U$ J, \, E
10.8 XFRM查找 272
# V* R' c5 q) L, b& H( m& r10.9 IPsec的NAT穿越功能 275
6 t; L9 f' z5 Z2 S; B0 ] Q6 S10.10 总结 2763 _6 a5 g( i, d
10.11 快速参考 2763 A& u+ B' h9 m
10.11.1 方法 276
" X |% X& K1 H+ U, Z5 V, x( N10.11.2 表 278- M) _# ]/ \/ M ?; _; S* a
第11章 第4层协议 280: C# a" l5 N1 K0 J% ^2 h
11.1 套接字 280
1 Q5 ^( G" N- l11.2 创建套接字 281; X9 p. ^3 E- l v
11.3 用户数据包协议(UDP) 285
( j* t5 E8 O W- K k4 h# q+ P! A" h y9 _11.3.1 UDP的初始化 286
6 U- S# x) W& @" Y9 C11.3.2 发送UDP数据包 287. T I7 m2 ]0 ]: ~
11.3.3 接收来自网络层(L3)的
$ W O; t$ }+ B- [! Y/ DUDP数据包 290
& w$ S* R, C8 V3 b5 A; c* m11.4 传输控制协议(TCP) 293
! D! o4 D# n. R" F" w6 E& V; ]11.4.1 TCP报头 2938 A9 t4 M; j/ w6 I: K2 S
11.4.2 TCP的初始化 295
9 x2 A9 N& Z' \11.4.3 TCP定时器 296
u1 |$ J2 g5 M8 W+ o& P' W11.4.4 TCP套接字的初始化 297, |2 t$ p5 [0 ]% }7 z
11.4.5 TCP连接的建立 297
2 M T! h0 t3 p" w11.4.6 接收来自网络层(L3)的
) N, S8 Y) p+ r e1 W+ P) D' ]9 XTCP数据包 298' Z2 f, m6 ]- D: I- Z; `; s
11.4.7 发送TCP数据包 299
1 {. W9 M- O( k6 q11.5 流控制传输协议(SCTP) 300
X& q4 n& q; x11.5.1 SCTP数据包和数据块 301! y; j; u9 z0 B7 L( {; K$ o$ [9 f
11.5.2 SCTP块头 302) p8 J( ?% ~5 N2 v$ `0 p
11.5.3 SCTP块 302 java8.com5 h- g+ O8 [( U/ C7 }4 G( J2 }
11.5.4 SCTP关联 303# X Q8 d& N, n4 ?8 F3 M; ]" N
11.5.5 建立SCTP关联 305
6 j, V3 p1 q" j11.5.6 接收SCTP数据包 305
- C( V4 ?1 h+ m/ z: s; S# J& ?11.5.7 发送SCTP数据包 306
5 m7 |; J- T( J! L) V11.5.8 SCTP心跳 306$ E2 F# h% i4 @ d" b& P4 [
11.5.9 SCTP多流 306
8 a: C- e& j9 a0 _ g; Y7 Y11.5.10 SCTP多宿主 307
$ J$ x+ Q+ @2 G. @/ O/ U11.6 数据报拥塞控制协议(DCCP) 307
2 Y& X$ ^) a9 N5 e6 N7 x11.6.1 DCCP报头 307
0 S, U) u: U3 }% F. e& `( b! k11.6.2 DCCP的初始化 3
- M& x+ [* U) w 3 M1 w {8 b6 U% K; @" \
百度云盘下载地址(完全免费-绝无套路):
! R' h3 _5 d0 I6 x# s0 m5 w: l5 U3 q! d2 X6 V- Y
! D0 S6 J7 Y! O5 @1 s- G$ {
5 t, J) F! ~: d4 \; H- J3 ` |
本帖子中包含更多资源
您需要 登录 才可以下载或查看,没有账号?立即注册
x
|