图书介绍

TCP/IP详解 卷2 实现 英文版2025|PDF|Epub|mobi|kindle电子书版本百度云盘下载

TCP/IP详解 卷2 实现 英文版
  • (美)GaryR.Wright,(美)W.RichardStevens著 著
  • 出版社: 北京:机械工业出版社
  • ISBN:7111095049
  • 出版时间:2002
  • 标注页数:1174页
  • 文件大小:467MB
  • 文件页数:1208页
  • 主题词:

PDF下载


点此进入-本书在线PDF格式电子书下载【推荐-云解压-方便快捷】直接下载PDF格式图书。移动端-PC端通用
种子下载[BT下载速度快]温馨提示:(请使用BT下载软件FDM进行下载)软件下载地址页直链下载[便捷但速度慢]  [在线试读本书]   [在线获取解压码]

下载说明

TCP/IP详解 卷2 实现 英文版PDF格式电子书版下载

下载的文件为RAR压缩包。需要使用解压软件进行解压得到PDF格式图书。

建议使用BT下载工具Free Download Manager进行下载,简称FDM(免费,没有广告,支持多平台)。本站资源全部打包为BT种子。所以需要使用专业的BT下载软件进行下载。如BitComet qBittorrent uTorrent等BT下载工具。迅雷目前由于本站不是热门资源。不推荐使用!后期资源热门了。安装了迅雷也可以迅雷进行下载!

(文件页数 要大于 标注页数,上中下等多册电子书除外)

注意:本站所有压缩包均有解压码: 点击下载压缩包解压工具

图书目录

Chapter 1.Introduction1

1.1 Introduction1

1.2 Source Code Presentation1

1.3 History3

1.4 Application Programming Interfaces5

1.5 Example Program5

1.6 System Calls and Library Functions7

1.7 Network Implementation Overview9

1.8 Descriptors10

1.9 Mbufs (Memory Buffers) and Output Processing15

1.10 Input Processing19

1.11 Network Implementation Overview Revisited22

1.12 Interrupt Levels and Concurrency23

1.13 Source Code Organization26

1.14 Test Network28

1.15 Summary29

Chapter 2.Mbufs:Memory Buffers31

2.1 Introduction31

2.2 Code Introduction36

2.3 Mbuf Definitions37

mbuf38

2.4 mbuf Structure38

2.5 Simple Mbuf Macros and Functions40

2.6 m_devget and m_pullup Functions44

2.7 Summary of Mbuf Macros and Functions51

2.8 Summary of Net/3 Networking Data Structures54

2.9 m_copy and Cluster Reference Counts56

2.10 Alternatives60

2.11 Summary60

3.1 Introduction63

Chapter 3.Interface Layer63

3.2 Code Introduction64

3.3 ifnet Structure65

ifnet67

ifqueue71

3.4 ifaddr Structure73

ifaddr73

3.5 sockaddr Structure74

osockaddr75

sockaddr75

3.6 ifnet and ifaddr Specialization76

3.7 Network Initialization Overview77

pdevinit78

le_softc80

Structure Definitions80

arpcom80

3.8 Ethernet Initialization80

3.9 SLIP Initialization82

sl_softc83

3.10 Loopback Initialization85

3.11 if_attach Function85

sockaddr_dl87

3.12 ifinit Function93

3.13 Summary94

Chapter 4.Interfaces:Ethernet95

4.1 Introduction95

4.2 Code Introduction96

4.3 Ethemet Interface98

ether_header102

timeval106

4.4 ioctl System Call114

ifreq117

ifconf117

4.5 Summary125

5.2 Code Introduction127

5.1 Introduction127

Chapter 5.Interfaces:SLIP and Loopback127

5.3 SLIP Interface128

5.4 Loopback Interface150

5.5 Summary153

Chapter 6.IP Addressing155

6.1 Introduction155

6.2 Code Introduction158

6.3 Interface and Address Summary158

in_addr160

sockaddr_in160

6.4 sockaddr_in Structure160

6.5 in_ifaddr Structure161

6.6 Address Assignment161

in_ifaddr161

in_aliasreq174

6.7 Interface ioctl Processing177

6.8 Internet Utility Functions181

6.9 ifnet Utility Functions182

6.10 Summary183

7.1 Introduction185

Chapter 7.Domains and Protocols185

7.2 Code Introduction186

7.3 domain Structure187

domain187

7.4 protosw Structure188

protosw188

7.5 IP domain and protosw Structures191

7.6 pffindproto and pffindtype Functions196

7.7 pfctlinput Function198

7.8 IP Initialization199

7.9 sysctl System Call201

7.10 Summary204

Chapter 8.IP:Internet Protocol205

8.1 Introduction205

8.2 Code Introduction206

8.3 IP Packets210

ip211

8.4 Input Processing:ipintr Function212

8.5 Forwarding:ip_forward Function220

route220

8.6 Output Processing:ip_output Function228

8.7 Internet Checksum:in_cksum Function234

8.8 setsockopt and getsockopt System Calls239

8.9 ip_sysctl Function244

8.10 Summary245

9.2 Code Introduction247

9.1 Introduction247

Chapter 9.IP Option Processing247

9.3 Option Format248

9.4 ip_dooptions Function249

9.5 Record Route Option252

9.6 Source and Record Route Options254

ip_srcrt258

9.7 Timestamp Option261

ip_timestamp262

ipoption265

9.8 ip_insertoptions Function265

9.9 ip_pcbopts Function269

9.10 Limitations272

9.11 Summary272

10.1 Introduction275

Chapter 10.IP Fragmentation and Reassembly275

10.2 Code Introduction277

10.3 Fragmentation278

10.4 ip_optcopy Function282

10.5 Reassembly283

ipq286

10.6 ip_reass Function286

ipasfrag287

10.7 ip_slowtimo Function298

10.8 Summary300

Chapter 11.ICMP:Internet Control Message Protocol301

11.1 Introduction301

11.2 Code Introduction305

icmp308

11.3 icmp Structure308

11.4 ICMP protosw Structure309

11.5 Input Processing:icmp_input Function310

11.6 Error Processing313

11.7 Request Processing316

11.8 Redirect Processing321

11.9 Reply Processing323

11.10 Output Processing324

11.11 icmp_error Function324

11.12 icmp_reflect Function328

11.13 icmp_send Function333

11.14 icmp_sysctl Function334

11.15 Summary335

12.1 Introduction337

Chapter 12.IP Multicasting337

12.2 Code Introduction340

12.3 Ethernet Multicast Addresses341

ether_multi342

12.4 ether_multi Structure342

12.5 Ethernet Multicast Reception344

12.6 in_multi Structure345

in_multi345

ip_moptions347

12.7 ip_moptions Structure347

12.8 Multicast Socket Options348

12.9 Multicast TTL Values348

12.10 ip_setmoptions Function351

12.11 Joining an IP Multicast Group355

ip_mreq356

12.12 Leaving an IP Multicast Group366

12.13 ip_getmoptions Function371

12.14 Multicast Input Processing:ipintr Function373

12.15 Multicast Output Processing:ip_output Function375

12.16 Performance Considerations379

12.17 Summary379

Chapter 13.IGMP:Internet Group Management Protocol381

13.1 Introduction381

13.2 Code Introduction382

igmp384

13.3 igmp Structure384

13.4 IGMP protosw Structure384

13.5 Joining a Group:igmp_joingroup Function386

13.6 igmp_fasttimo Function387

13.7 Input Processing:igmp_input Function391

13.8 Leaving a Group:igmp_leavegroup Function395

13.9 Summary396

Chapter 14.IP Multicast Routing397

14.1 Introduction397

14.2 Code Introduction398

14.3 Multicast Output Processing Revisited399

14.4 mrouted Daemon401

14.5 Virtual Interfaces404

vif406

vifctl407

14.6 IGMP Revisited411

lgrplctl411

14.7 Multicast Routing416

mrt419

mrtctl420

14.8 Multicast Forwarding:ip_mforward Function424

14.9 Cleanup:ip_mrouter_done Function433

14.10 Summary434

Chapter 15.Socket Layer435

15.1 Introduction435

15.2 Code Introduction436

15.3 socket Structure437

socket438

15.4 System Calls441

sysent443

socket_args444

15.5 Processes,Descriptors,and Sockets445

15.6 socket System Call447

15.7 getsock and sockargs Functions451

15.8 bind System Call453

15.9 listen System Call455

15.10 tsleep and wakeup Functions456

15.11 accept System Call457

15.12 sonewconn and soisconnected Functions461

15.13 connect System call464

15.14 shutdown System Call468

15.15 close System Call471

15.16 Summary474

Chapter 16.Socket I/O475

16.1 Introduction475

16.2 Code Introduction475

sockbuf476

16.3 Socket Buffers476

16.4 write,writev,sendto,and sendmsg System Calls480

iovec481

cmsghdr482

msghdr482

16.5 sendmsg System Call483

uio485

16.6 sendit Function485

16.7 sosend Function489

16.8 read,readv,recvfrom,and recvmsg System Calls500

16.9 recvmsg System Call501

16.10 recvit Function503

16.11 soreceive Function505

16.12 soreceive Code510

16.13 select System Call524

selinfo531

16.14 Summary534

Chapter 17.Socket Options537

17.1 Introduction537

17.2 Code Introduction538

17.3 setsockopt System Call539

linger542

17.4 getsockopt System Call545

17.5 fcntl and ioctl System Calls548

17.6 getsockname System Call554

17.7 getpeername System Call554

17.8 Summary557

Chapter 18.Radix Tree Routing Tables559

18.1 Introduction559

18.2 Routing Table Structure560

18.3 Routing Sockets569

18.4 Code Introduction570

18.5 Radix Node Data Structures573

radix_node_head574

radix_node575

18.6 Routing Structures578

radix_mask578

rtentry579

rt_metrics580

18.7 Initialization:route_init and rtable_init Functions581

18.8 Initiallzation:rn_init and rn_inithead Functions584

18.9 Duplicate Keys and Mask Lists587

18.10 rn_match Function591

18.12 Summary599

18.11 rn_search Function599

Chapter 19.Routing Requests and Routing Messages601

19.1 Introduction601

19.2 rtalloc and rtallocl Functions601

19.3 RTFREE Macro and rtfree Function604

19.4 rtrequest Function607

19.5 rt_setgate Function612

19.6 rtinit Function615

19.7 rtredirect Function617

19.8 Routing Message Structures621

if_msghdr622

ifa_msghdr622

rt_msghdr622

rt_addrinfo623

route_cb625

19.9 rt_missmsg Function625

sockproto626

19.10 rt_ifmsg Function627

19.11 rt_newaddrmsg Function628

19.12 rt_msg1 Function630

walkarg632

19.13 rt_msg2 Function632

19.14 sysctl_rtable Function635

19.15 sysctl_dumpentry Function640

19.16 sysctl_iflist Function642

19.17 Summary644

Chapter 20.Routing Sockets645

20.1 Introduction645

20.2 routedomain and protosw Structures646

20.4 raw_init Function647

rawcb647

20.3 Routing Control Blocks647

20.5 route_output Function648

20.6 rt_xaddrs Function660

20.7 rt_setmetrics Function661

20.8 raw_input Function662

20.9 route_usrreq Function664

20.10 raw_usrreq Function666

20.11 raw_attach,raw_detach,and raw_disconnect Function671

20.12 Summary672

Chapter 21.ARP:Address Resolution Protocol675

21.1 Introduction675

21.2 ARP and the Routing Table675

21.3 Code Introduction678

21.4 ARP Structures681

ether_arp682

arphdr682

llinfo_arp682

21.5 arpwhohas Function683

21.6 arprequest Function684

21.7 arpintr Function687

21.8 in_arpinput Function688

21.9 ARP Timer Functions694

21.10 arpresolve Function696

21.11 arplockup Function701

sockaddr_inarp701

21.12 Proxy ARP703

21.13 arp_rtrequest Function704

21.14 ARP and Multicasting710

21.15 Summary711

Chapter 22.Protocol Control Blocks713

22.1 Introduction713

22.2 Code Introduction715

inpcb716

22.3 inpcb Structure716

22.4 in_pcballoc and in_pcbdetach Functions717

22.5 Binding,Connecting,and Demultiplexing719

22.6 in_pcblookup Function724

22.7 in_pcbbind Function728

22.8 in_pcbconnect Function735

22.9 in_pcbdisconnect Function741

22.10 in_setsockaddr and in_setpeeraddr Functions741

22.11 in_pcbnotify,in_rtchange,and in_losing Functions742

22.12 Implementation Refinements750

22.13 Summary751

Chapter 23.UDP:User Datagram Protocol755

23.1 Introduction755

23.2 Code Introduction755

23.3 UDP protosw Structure758

udphdr759

23.4 UDP Header759

udpiphdr759

ipovly760

23.6 udp_output Function760

23.5 udp_init Function760

23.7 udp_input Function769

23.8 udp_saveopt Function781

23.9 udp_ctlinput Function782

23.10 udp_usrreq Function784

23.11 udp_sysctl Function790

23.12 Implementation Refinements791

23.13 Summary793

Chapter 24.TCP:Transmission Control Protocol795

24.1 Introduction795

24.2 Code Introduction795

24.3 TCP protosw Structure801

24.4 TCP Header801

tcphdr801

24.5 TCP Control BLock803

tcpiphdr803

tcpcb804

24.6 TCP State Transition Diagram805

24.7 TCP Sequence Numbers807

24.8 tcp_init Function812

24.9 Summary815

Chapter 25.TCP Timers817

25.1 Introduction817

25.2 Code Introduction819

25.3 tcp_cancelzimers Function821

25.4 tcp_fasttimo Function821

25.5 tcp_slowt imo Function822

25.6 tcp_timers Function824

25.7 Retransmission Timer Calculations831

25.8 tcp_newtcpcb Function833

25.9 tcp_setpersist Function835

25.10 tcp_xmit_timcr Function836

25.11 Retransmission Timeout:tcp_Limers Function841

25.12 An RTT Example846

25.13 Summary848

Chapter 26.TCP Output851

26.1 Introduction851

26.2 tcp_output Overview852

26.3 Determine if a Segment Should be Sent852

26.4 TCP Options864

26.6 Timestamp Option866

26.5 Window Scale Option866

26.7 Send a Segment871

26.8 tcp_template Function884

26.9 tcp_respond Function885

26.10 Summary888

Chapter 27.TCP Functions891

27.1 Introduction891

27.3 tcp_drop Function892

27.2 tcp_drain Function892

27.4 tcp_close Function893

27.5 tcp_mss Function897

27.7 tcp_notify Function904

27.6 tcp_ctlinput Function904

27.8 tcp_quench Function906

27.9 TCP_REASS Macro and tcp_reass Function906

tcp_debug916

27.10 tcp_trace Function916

27.11 Summary920

Chapter 28.TCP Input923

28.1 Introduction923

28.2 Preliminary Processing925

28.3 tcp_dooptions Function933

28.4 Header Prediction934

28.5 TCP Input:Slow Path Processing941

28.6 Initiation of Passive Open,Completion of Active Open942

28.7 PAWS:Protection Against Wrapped Sequence Numbers951

28.8 Trim Segment so Data is Within Window954

28.9 Self-Connects and Simultaneous Opens960

28.10 Record Timestamp963

28.11 RST Processing963

28.12 Summary965

Chapter 29.TCP Input (Continued)967

29.1 Introduction967

29.2 ACK Processing Overview967

29.3 Completion of Passive Opens and Simultaneous Opens967

29.4 Fast Retransmit and Fast Recovery Algorithms970

29.5 ACK Processing974

29.6 Update Window Information981

29.7 Urgent Mode Processing983

29.8 tcp_pulloutofband Function986

29.9 Processing of Received Data988

29.10 FIN Processing990

29.11 Final Processing992

29.12 Implementation Refinements994

29.13 Header Compression995

29.14 Summary1004

Chapter 30.TCP User Requests1007

30.1 Introduction1007

30.2 tcp_usrreq Function1007

30.3 tcp_attach Function1018

30.4 tcp_disconnect Function1019

30.5 tcp_usrclosed Function1021

30.6 tcp_ctloutput Function1022

30.7 Summary1025

31.1 Introduction1027

Chapter 31.BPF:DSD Packet Filter1027

31.2 Code Introduction1028

31.3 bpf_if Structure1029

hpf_if1029

bpf_hdr1029

31.4 bpf_d Structure1032

hpf_d1033

31.5 BPF Input1040

31.6 BPF Output1046

31.7 Summary1047

Chapter 32.Raw IP1049

32.1 Introduction1049

32.2 Code Introduction1050

32.3 Raw IP protosw Structure1051

32.5 rip_input Function1053

32.4 rip_init Function1053

32.6 rip_output Function1056

32.7 rip_usrreq Function1058

32.8 rip_ctloutput Function1063

32.9 Summary1065

Epilogue1067

Appendix A.Solutions to Selected Exercises1069

Appendix B.Source Code Availability1093

Appendix C.RFC 1122 Compliance1097

C.1 Link-Layer Requirements1097

C.2 IP Requirements1098

C.3 IP Options Requirements1102

C.4 IP Fragmentation and Reassembly Requirements1104

C.5 ICMP Requirements1105

C.6 Multicasting Requirements1110

C.7 IGMP Requirements1111

C.8 Routing Requirements1111

C.9 ARP Requirements1113

C.10 UDP Requirements1113

C.11 TCP Requirements1115

Bibliography1125

Index1133

热门推荐