1 Fundamentals $ \: B/ C0 j8 |. }* L
1.1 Requirements of Networking L% ~0 D3 T+ \$ o
1.2 Underlying Principles
& g- a5 A* {# {1 L' }1.3 The Internet Architecture f# Z3 E+ S: }9 M5 }: U
1.4 Open Source Implementations
( @9 y4 M3 `' ]7 G1.5 Book Roadmap: A Packet’s Life 4 o' W9 I- P2 R5 Y9 n. N3 d% N) A6 b
Appendix B Linux Kernel Overview ) B* q5 _7 X: @+ B
B.1 Kernel Source Tree * A' t. j5 U0 V& c% y
B.2 Source Code of Networking : ~* w) x& {* k- l' N, O. K( f T
B.3 Tools for Source Code Tracing
* l+ e; m& ]( r; X* F: U1 lAppendix C Development Tools ' N# y1 l) F6 U( m5 b$ V9 O) c
C.1 Programming * u( f a: y& L% C+ J [
C.2 Debugging , H8 ~6 a, D% Q5 ]7 G$ r* F
C.3 Maintaining
. O2 A5 `- v( T* F/ WC.4 Profiling
- _- g2 F3 |( S' f0 {" kC.5 Embedding
9 O g' o7 F2 d# kAppendix D Network Utilities
0 D/ X: I5 V- L, v! N0 H. zD.1 Name-Addressing
: I' k* a9 I# bD.2 Perimeter-Probing
* t( D$ ]1 E: ~) i1 FD.3 Traffic-Monitoring
; p6 x7 _/ j1 m9 _D.4 Benchmarking - q" N W5 w6 }& l) i4 ~
D.5 Simulation and Emulation ! P$ K( v0 G7 s; o$ u3 |
D.6 Hacking
! ], t) i+ `% j1 L2 Physical Layer
8 c/ I, ?( B* f2 W3 A5 BGeneral Issues 3 @* {6 S3 B% i/ ]& M/ `) F; v
Open Source Implementation 2.1: 8B/10B Encoder " V0 g. A( y0 }# n
Open Source Implementation 2.2: IEEE 802.11a Transmitter with OFDM
6 [/ c! i5 T/ a2 y; |9 n; a3 Link Layer $ `5 u. g9 o2 g
General Issues
$ p ]4 x0 G9 n" l8 ZOpen Source Implementation 3.1: Checksum
4 A6 I9 F% d3 H2 i9 h) e2 YOpen Source Implementation 3.2: Hardware CRC32 8 m# P8 a2 L' ]) ^8 a% ^
Open Source Implementation 3.3: Link-Layer Packet Flows in Call Graphs
: }1 g; `- e' K1 ^! ^ G# _3 cOpen Source Implementation 3.4: PPP 1 l+ ^5 f+ n6 d& j
Open Source Implementation 3.5: CSMA/CD
. ^/ J* B( \! {% X( sOpen Source Implementation 3.6: IEEE 802.11 MAC Simulation with NS-2 * s- N) Z! l2 s
Open Source Implementation 3.7: Self-Learning Bridging ; u+ a% m/ D/ x& K1 L
Open Source Implementation 3.8: Spanning Tree
$ K; u, F2 H) z0 ~" ~' EOpen Source Implementation 3.9: Probing I/O ports, Interrupt Handling and DMA , D5 u" y9 e3 k/ a7 S6 N
Open Source Implementation 3.10: The Network Device Driver in Linux * p, K& W9 f' }
4 Internet Protocol Layer
. A5 e5 b2 a N+ lGeneral Issues : h3 }$ [0 u: q" j
Open Source Implementation 4.1: IP-Layer Packet Flows in Call Graphs ) _3 O: ]' m' f3 H
Open Source Implementation 4.2: IPv4 Packet Forwarding : [' W+ u# k2 b: e6 ~/ u
Open Source Implementation 4.3: IPv4 Checksum in Assembly
0 \" X; }/ N7 z# lOpen Source Implementation 4.4: IPv4 Fragmentation : j: `4 d; |$ P( j0 Y8 @% `
Open Source Implementation 4.5: NAT * D* ~9 m; N& F, [8 ]& k# s5 R0 H
Open Source Implementation 4.6: ARP / A1 E# y3 c" K2 i0 y8 }
Open Source Implementation 4.7: DHCP $ i1 U |% ^1 `5 n( {
Open Source Implementation 4.8: ICMP # E' H+ v- Y( W5 J M
Open Source Implementation 4.9: RIP
" R% J+ k* ?( r# NOpen Source Implementation 4.10: OSPF
+ Z/ t+ Y, |6 k* Z' a; \" b$ dOpen Source Implementation 4.11: BGP 3 r/ C% B/ r7 k# Z- |
Open Source Implementation 4.12: Mrouted
. F9 g" {1 D" s. T( F5 Transport Layer 6 u3 G7 L- u5 |5 ]) @, f" [ H
General Issues
, S4 X; d" r8 \3 h/ ?Open Source Implementation 5.1: Transport-Layer Packet Flows in Call Graphs + \8 z" d& S8 ?, e" M
Open Source Implementation 5.2: UDP and TCP Checksum 3 f/ Z! `/ p8 l
Open Source Implementation 5.3: TCP Sliding Window Flow Control 1 ^5 c. C/ R+ S V5 V6 z" i3 r8 {! y
Open Source Implementation 5.4: TCP Slow Start and Congestion Avoidance ' f! E4 N* i$ E7 S' [( b( ], d
Open Source Implementation 5.5: TCP Retransmit Timer
' ]! \. @4 ~: g" q9 I3 ]( s0 ]$ B1 |Open Source Implementation 5.6: TCP Persistence Timer and Keepalive Timer - S3 n0 i/ }$ r% H0 p5 h) e E1 J
Open Source Implementation 5.7: Socket Read/Write Inside out ( F8 O4 Y+ f) k7 s
Open Source Implementation 5.8: Bypassing the Transport Layer $ T _! L: ^2 ?+ ?, U4 `
Open Source Implementation 5.9: Making Myself Promiscuous
3 l' ~4 X, h* V; X" T2 b( p- ]Open Source Implementation 5.10: Linux Socket Filter ' j9 c' H* _9 P" S6 {, |0 p/ K% O
6 Application Layer : ^6 l" `* t/ E- W; r
General Issues " k, G: t' i" q+ {3 U
Open Source Implementation 6.1: BIND - o' N: V4 ]* W
Open Source Implementation 6.2: qmail
6 e5 s9 ~/ f4 }# O9 v6 o# COpen Source Implementation 6.3: Apache
5 s3 O' o- f; h" Q- HOpen Source Implementation 6.4: wu-ftpd
' o `" a `/ t: ?9 v$ VOpen Source Implementation 6.5: Net-SNMP * ^' F* V; E5 X
Open Source Implementation 6.6: Asterisk
+ f1 X) K' \! s- i! tOpen Source Implementation 6.7: Darwin
% L C0 m G# ^+ V7 G1 N3 BOpen Source Implementation 6.8: BitTorrent
4 k# l" V" G# G8 t1 ?; v7 Internet QoS 5 t# t& |0 R; p
General Issues
; Z) J. F8 M0 b9 O4 ~+ d, EOpen Source Implementation 7.1: Traffic Control Elements in Linux ' h" V' E( F* ?% T/ Z9 P* E0 ?
Open Source Implementation 7.2: Traffic Estimator
& x F1 J! {6 K- c2 c4 TOpen Source Implementation 7.3: Flow Identification 7 C" }3 W- u" T) h. \5 U' D
Open Source Implementation 7.4: Token Bucket
0 j J" H$ }" Y) S7 Z: x6 U( XOpen Source Implementation 7.5: Packet Scheduling
1 O( g1 T% C% T/ ]9 p/ m8 iOpen Source Implementation 7.6: Random Early Detection (RED)
K0 A+ I# j- ]! y- f" c0 L+ V* v8 Network Security
' U; ^" l$ ?/ f, b% ]% ^General Issues
/ O% J- \# ]$ ?/ S& o& U% n9 bOpen Source Implementation 8.1: Hardware 3DES 3 b. A" ~2 c8 @; ]: j9 c% U. |
Open Source Implementation 8.2: MD5 ; e7 U+ E& I7 `8 h+ v' G. Y
Open Source Implementation 8.3: AH and ESP in IPSec " A5 \4 f* D* ]: ?# N1 [
Open Source Implementation 8.4: Netfilter and iptables
p9 H& K' P, q3 A( J2 YOpen Source Implementation 8.5: FireWall Toolkit (FWTK) ; H( [% a) b* u' a1 _
Open Source Implementation 8.6: ClamAV
+ ]4 L. A! a3 v8 HOpen Source Implementation 8.7: Snort
1 b0 u Z% C- {! GOpen Source Implementation 8.8: SpamAssassin
F. e0 X& o$ a" c, q! p | 2小時 1 Q2 q8 { [4 D( k7 V. Q$ F |
" [1 h3 z3 ]. ]$ L) j2 ~7 X. ^' W4 k, z9 x' ]( j7 [; j+ s' i
/ C- x7 Q- f' x+ u4 G
- b$ F4 C ^% x0 T+ I0 p7 L
& v f( e6 M2 Q3 q( V0.5小時
4 R# M2 @! C# {& m8 Y. I0 Z# f( u; s( @8 C* e3 d
+ }* I. B) S% b: G8 h" k1 ^5 p7 c2 N+ M' k/ k/ e
0.25小時
/ b; U1 `3 W4 ^8 T# [$ z! E- f* F: E( M' T; E% h( L. L: e2 v% `
8 H7 L! g% R7 Y8 \' e0 C/ i* U& } @7 W' A0 C
+ v% Z! b+ }7 s' O% n" h9 l
, Y9 j1 a; v# Y$ n$ N9 I/ {
0.25小時
: i3 V$ x9 O' s1 U/ z( X ?$ d+ b/ q" i6 ~- l
4 s2 A, Q: ?" T
, {. y5 N2 u7 Q# Y; F, m8 p4 A9 E# k& C' l5 u X
; @ x2 f% d$ J+ ^$ g
1 I, L. R/ H$ @0.5小時
% o! y4 |% Z; D2 u- J% H* p5 A+ }! K8 _; U* O4 ?
! C% K, D* O: F! k5 x. Y) w8 }% c9 V8 r, T& M
1小時 # r+ n5 R* K5 V* n" q% d' s: ~
7 ], I. c/ u& ^( Z+ s' B* y5 j
; t0 h: o$ R! o0 ] w$ x
7 r* m# q& f- K! R( Q
" W$ L i% Y& {; A" `; p. J( I5 E3 n
7 _% b' u* s; t9 e
9 D! }' A ~4 V; @' Z& ~* Z- k8 A" X; |5 ]& a& d3 u
9 f! V. x+ ^ J, R3 r
) n- o% p" T. ?' y6 |' r8 `* B: u3 {7 o$ e
; X& ^1 K I2 o u1.5小時 0 M" e% Z: q& N1 \
8 y8 Z7 H+ P$ N$ w& _+ i
, ~/ K9 X1 j- {$ z ^2 C- D/ P& R5 g; v. \# s/ \
; P) ]7 T! t7 B+ X2 k/ ?- X" s. a
% _5 s0 w$ W2 {2 o% c
2 Y. h# T) r, ?5 h# o! M, B" }' {" i+ H- F2 q9 n
* O- W/ i1 j3 i {! t& W% Q+ v* ]) a2 P4 @7 d j
4 J o# ]3 S5 P f* X
9 }- \" _: I, Y- Q6 U8 x! m
! q/ @0 K* g9 m$ h8 f0 ]" }
8 H* M, @6 A1 J2 E9 e; T" F1小時
! W* k2 {3 p7 Q5 j- l# |. A
$ ~* N% O9 c; Q- ~
" u' u. B6 o, \+ \1 G- `4 g
9 W: H6 ~6 o; E( {2 A: J
4 u' y7 g2 W; W5 ~* i/ J' k
" }/ x8 T, m% Z1 R1 A r) M# E/ j) U! T0 U7 V( M
, }0 b5 R k- { B7 v8 s
8 K3 y* u2 F' _0 \3 ]! N6 S! d( z0 U0 R; I, m" A& ?' Q9 m( K) V* {
! W- K) b+ C+ c3 o+ U' Y$ ]
% J& N- K$ s% f6 K7 j% M; u, `
, c J" p5 R; v5 \5 ]# Z3 h4 P- [8 w
2小時
" E( B: Z! Q' O9 `! C- M3 r
; [; t g0 v/ @
1 F6 k0 J7 r5 M8 ^: U5 h* h4 F1 M7 m$ C
. [4 I |+ ?, F1 ?( u0 ?
" }4 u W* {4 n, f: Q) Z. q/ G7 L: ?- G5 I6 d8 O6 Q: |# Z7 [
6 `7 @3 Y+ W9 y: B2 W3 ?1 l3 d& y
, j$ X h, _5 H
1小時
& D7 Z# ^3 G# e/ {9 U
$ }: [' x9 _8 D* m/ S! w* q" r% U7 H& Y1 U3 e
3 u; Q& }% S: r% V/ _5 Y
3 V- r" [1 i' z. ?0 Z1 r' t
$ A p z, a6 J, F' ~% e" ~2 D t6 ~+ k) y, T0 z+ b
' V6 ^( F) o5 K7 U. G; y" K7 o
2小時
9 `2 X i) S6 _# u8 ?0 ~* b" s3 ]+ S5 p. x7 s# E+ }( M3 z5 n: g$ J
|