《UNIX网络编程卷1套接字联网API第3版》[82M]百度网盘|pdf下载|亲测有效
《UNIX网络编程卷1套接字联网API第3版》[82M]百度网盘|pdf下载|亲测有效

UNIX网络编程卷1套接字联网API第3版 pdf下载

出版社 文轩网旗舰店
出版年 2025
页数 390页
装帧 精装
评分 9.4(豆瓣)
8.99¥ 10.99¥

内容简介

本篇主要提供UNIX网络编程卷1套接字联网API第3版电子书的pdf版本下载,本电子书下载方式为百度网盘方式,点击以上按钮下单完成后即会通过邮件和网页的方式发货,有问题请联系邮箱ebook666@outlook.com

作  者:[美]W. 理查德·史蒂文斯(W. Richard Stevens)比尔·芬纳(Bill Fenner) 安德鲁·M. 鲁道夫(Andrew M.Rudoff) 著 无 译
定  价:169
出 版 社:人民邮电出版社
出版日期:2018年02月01日
页  数:806
装  帧:平装
ISBN:9787115517791
主编推荐
1. UNIX网络专家W. Richard Stevens的传世之作。 2. 世界有名网络专家Bill Fenner和Andrew M. Rudoff执笔,根据网络技术的发展,进行全面修订。 这是一部传世之作!网络编程专家Bill Fenner和Andrew M.Rudoff 应邀执笔,对W.RichardStevens 的作品进行修订。书中吸纳了近几年网络技术的发展,增添了IPv6、SCTP 协议和密钥管理套接字等内容,深入讨论了关键标准、实现和技术。 书中的所有示例都是在UNI等
目录
目    录 第  一部分 简介和TCP/IP 第  1章 简介  2 1.1  概述  2 1.2  一个简单的时间获取客户程序  5 1.3  协议无关性  9 1.4  错误处理:包裹函数  10 1.5  一个简单的时间获取服务器程序  12 1.6  本书中客户/服务器程序示例索引表  14 1.7  OSI模型  16 1.8  BSD网络支持历史  17 1.9  测试用网络及主机  19 1.10  Unix标准  22 1.11  位体系结构  24 1.12  小结  25 习题  25 第  2章 传输层:TCP、UDP和SCTP  27 2.1  概述  27 2.2  总图  27 2.3  用户数据报协议(UDP)  29 2.4  传输控制协议(TCP)  30 2.5  流控制传输协议(SCTP)  31 2.6  TCP连接的建立和终止  31 2.7  TIME_WAIT状态  37 2.8  SCTP关联的建立和终止  38 2.9  端口号  42 2.10  TCP端口号与并发服务器  43 2.11  缓冲区大小及  45 2.12  标准因特网服务  50 2.13  常见因特网应用的协议使用  51 2.14  小结  52 习题  53 第二部分  基本套接字编程 第3章  套接字编程简介  56 3.1  概述  56 3.2  套接字地址结构  56 3.3  值—结果参数  61 3.4  字节排序函数  63 3.5  字节操纵函数  66 3.6  inet_aton、inet_addr和inet_ntoa函数  67 3.7  inet_pton和inet_ntop函数  68 3.8  sock_ntop和相关函数  70 3.9  readn、writen和readline函数  72 3.10  小结  76 习题  76 第4章  基本TCP套接字编程  77 4.1  概述  77 4.2  socket函数  77 4.3  connect函数  80 4.4  bind函数  81 4.5  listen函数  84 4.6  accept函数  88 4.7  fork和exec函数  90 4.8  并发服务器  91 4.9  close函数  93 4.10  getsockname和getpeername函数  94 4.11  小结  96 习题  96 第5章  TCP客户/服务器程序示例  97 5.1  概述  97 5.2  TCP回射服务器程序:main函数  97 5.3  TCP回射服务器程序:str_echo函数  98 5.4  TCP回射客户程序:main函数  99 5.5  TCP回射客户程序:str_cli函数  100 5.6  正常启动  101 5.7  正常终止  102 5.8  IX信号处理  103 5.9  处理SIGCHLD信号  106 5.10  wait和waitpid函数  108 5.11  accept返回前连接中止  111 5.12  服务器进程终止  112 5.13  SIGPIPE信号  113 5.14  服务器主机崩溃  114 5.15  服务器主机崩溃后重启  115 5.16  服务器主机关机  116 5.17  TCP程序例子小结  116 5.18  数据格式  117 5.19  小结  120 习题  120 第6章  I/O复用:select和poll函数  122 6.1  概述  122 6.2  I/O模型  122 6.3  select函数  127   str_cli函数(修订版)  132 6.5  批量输入  133 6.6  shutdown函数  136 6.7  str_cli函数(再修订版)  137 6.8  TCP回射服务器程序(修订版)  138 6.9  pselect函数  142 6.10  poll函数  144 6.11  TCP回射服务器程序(再修订版)  146 6.12  小结  148 习题  149 第7章  套接字选项  150 7.1  概述  150 7.2  getsockopt和setsockopt函数  150 7.3  检查选项是否受支持并获取默认值  152 7.4  套接字状态  156 7.5  通用套接字选项  156 7.6  IPv4套接字选项  168 7.7  ICMPv6套接字选项  169 7.8  IPv6套接字选项  169 7.9  TCP套接字选项  171 7.10  SCTP套接字选项  173 7.11  fcntl函数  182 7.12  小结  184 习题  184 第8章  基本UDP套接字编程  186 8.1  概述  186 8.2  recvfrom和sendto函数  187 8.3  UDP回射服务器程序:main函数  187 8.4  UDP回射服务器程序:dg_echo函数  188 8.5  UDP回射客户程序:main函数  190 8.6  UDP回射客户程序:dg_cli函数  190 8.7  数据报的丢失  191 8.8  验证接收到的响应  191 8.9  服务器进程未运行  193 8.10  UDP程序例子小结  194 8.11  UDP的connect函数  196 8.12  dg_cli函数(修订版)  199 8.13  UDP缺乏流量控制  200 8.14  UDP中的外出接口的确定  203 8.15  使用select函数的TCP和UDP回射服务器程序  204 8.16  小结  206 习题  207 第9章  基本SCTP套接字编程  208 9.1  概述  208 9.2  接口模型  208 9.3  sctp_bindx函数  212 9.4  sctp_connectx函数  213 9.5  sctp_getpaddrs函数  213 9.6  sctp_freepaddrs函数  213 9.7  sctp_getladdrs函数  214 9.8  sctp_freeladdrs函数  214 9.9  sctp_sendmsg函数  214 9.10  sctp_recvmsg函数  215 9.11  sctp_opt_info函数  215 9.12  sctp_peeloff函数  216 9.13  shutdown函数  216 9.14  通知  217 9.15  小结  221 习题  222 第  10章 SCTP客户/服务器程序例子  223 10.1  概述  223 10.2  SCTP一到多式流分回射服务器程序:main函数  223 10.3  SCTP一到多式流分回射客户程序:main函数  225 10.4  SCTP流分回射客户程序:sctpstr_cli函数  226 10.5  探究头端阻塞  228 10.6  控制流的数目  233 10.7  控制终结  233 10.8  小结  234 习题  235 第  11章 名字与地址转换  236 11.1  概述  236 11.2  域名系统  236 11.3  gethostbyname函数  239 11.4  gethostbyaddr函数  242 11.5  getservbyname和getservbyport函数  242 11.6  getaddrinfo函数  245 11.7  gai_strerror函数  250 11.8  freeaddrinfo函数  251 11.9  getaddrinfo函数:IPv6  251 11.10  getaddrinfo函数:例子  253 11.11  host_serv函数  254 11.12  tcp_connect函数  254 11.13  tcp_listen函数  257 11.14  udp_client函数  261 11.15  udp_connect函数  263 11.16  udp_server函数  2 11.17  getnameinfo函数  266 11.18  可重入函数  267 11.19  gethostbyname_r和gethostbyaddr_r函数  270 11.20  作废的IPv6地址解析函数  271 11.21  其他网络相关信息  272 11.22  小结  273 习题  274 第三部分  不错套接字编程 第  12章 IPv4与IPv6的互操作性  278 12.1  概述  278 12.2  IPv4客户与IPv6服务器  278 12.3  IPv6客户与IPv4服务器  281 12.4  IPv6地址测试宏  283 12.5  源代码可移植性  284 12.6  小结  284 习题  285 第  13章 守护进程和inetd服务器  286 13.1  概述  286 13.2  syslogd守护进程  286 13.3  syslog函数  287 13.4  daemon_init函数  289 13.5  inetd守护进程  293 13.6  daemon_inetd函数  297 13.7  小结  299 习题  299 第  14章 不错I/O函数  300 14.1  概述  300 14.2  套接字超时  300 14.3  recv和send函数  305 14.4  readv和writev函数  306 14.5  recvmsg和sendmsg函数  307 14.6  辅助数据  310 14.7  排队的数据量  313 14.8  套接字和标准I/O  313 14.9  不错轮询技术  316 14.10  T/TCP:事务目的TCP  320 14.11  小结  322 习题  323 第  15章 Unix域协议  324 15.1  概述  324 15.2  Unix域套接字地址结构  324 15.3  socketpair函数  326 15.4  套接字函数  327 15.5  Unix域字节流客户/服务器程序  327 15.6  Unix域数据报客户/服务器程序  329 15.7  描述符传递  330 15.8  接收发送者的凭证  337 15.9  小结  340 习题  340 第  16章 非阻塞式I/O  341 16.1  概述  341 16.2  非阻塞读和写:str_cli函数 (修订版)  342 16.3  非阻塞connect  351 1  非阻塞connect:时间获取客户 程序  352 16.5  非阻塞connect:Web客户程序  354 16.6  非阻塞accept  362 16.7  小结  363 习题  363 第  17章 ioctl操作  365 17.1  概述  365 17.2  ioctl函数  365 17.3  套接字操作  366 17.4  文件操作  367 17.5  接口配置  367 17.6  get_ifi_info函数  369 17.7  接口操作  378 17.8  ARP高速缓存操作  378 17.9  路由表操作  380 17.10  小结  381 习题  381 第  18章 路由套接字  382 18.1  概述  382 18.2  数据链路套接字地址结构  382 18.3  读和写  383 18.4  sysctl操作  390 18.5  get_ifi_info函数  394 18.6  接口名字和索引函数  397 18.7  小结  401 习题  401 第  19章 密钥管理套接字  402 19.1  概述  402 19.2  读和写  403 19.3  倾泻安全关联数据库  404 19.4  创建静态安全关联  407 19.5  动态维护安全关联  412 19.6  小结  415 习题  416 第  20章 广播  417 20.1  概述  417 20.2  广播地址  418 20.3  单播和广播的比较  419 20.4  使用广播的dg_cli函数  422 20.5  竞争状态  424 20.6  小结  431 习题  432 第  21章 多播  433 21.1  概述  433 21.2  多播地址  433 21.3  局域网上多播和广播的比较  436 21.4  广域网上的多播  438 21.5  源特定多播  440 21.6  多播套接字选项  441 21.7  mcast_join和相关函数  445 21.8  使用多播的dg_cli函数  450 21.9  接收IP多播基础设施会话声明  451 21.10  发送和接收  454 21.11  SNTP:简单网络时间协议  457 21.12  小结  461 习题  461 第  22章 不错UDP套接字编程  462 22.1  概述  462 22.2  接收标志、目的IP地址和接口索引  462 22.3  数据报截断  467 22.4  何时用UDP代替TCP  467 22.5  给UDP应用增加可靠性  469 22.6  捆绑接口地址  478 22.7  并发UDP服务器  482 22.8  IPv6分组信息  483 22.9  IPv6路径MTU控制  486 22.10  小结  487 习题  488 第  23章 不错SCTP套接字编程  489 23.1  概述  489 23.2  自动关闭的一到多式服务器程序  489 23.3  部分递送  490 23.4  通知  492 23.5  无序的数据  495 23.6  捆绑地址子集  496 23.7  确定对端和本端地址信息  497 23.8  给定IP地址找出关联ID  500 23.9  心搏和地址不可达  501 23.10  关联剥离  502 23.11  定时控制  503 23.12  何时改用SCTP代替TCP  505 23.13  小结  506 习题  506 第  24章 带外数据  507 24.1  概述  507 24.2  TCP带外数据  507 24.3  sockatmark函数  513 24.4  TCP带外数据小结  519 24.5  客户/服务器心搏函数  520 24.6  小结  524 习题  524 第  25章 信号驱动式I/O  525 25.1  概述  525 25.2  套接字的信号驱动式I/O  525 25.3  使用SIGIO的UDP回射服务器程序  527 25.4  小结  532 习题  533 第  26章 线程  534 26.1  概述  534 26.2  基本线程函数:创建和终止  535 26.3  使用线程的str_cli函数  537 2  使用线程的TCP回射服务器程序  538 26.5  线程特定数据  542 26.6  Web客户与同时连接  549 26.7  互斥锁  552 26.8  条件变量  555 26.9  Web客户与同时连接(续)  558 26.10  小结  560 习题  560 第  27章 IP选项  561 27.1  概述  561 27.2  IPv4选项  561 27.3  IPv4源路径选项  562 27.4  IPv6扩展首部  569 27.5  IPv6步跳选项和目的地选项  569 27.6  IPv6路由首部  573 27.7  IPv6粘附选项  577 27.8  历史性IPv6不错API  578 27.9  小结  579 习题  579 第  28章 原始套接字  580 28.1  概述  580 28.2  原始套接字创建  580 28.3  原始套接字输出  581 28.4  原始套接字输入  582 28.5  ping程序  584 28.6  traceroute程序  596 28.7  一个ICMP消息守护程序  608 28.8  小结  622 习题  622 第  29章 数据链路访问  623 29.1  概述  623 29.2  BPF:BSD分组过滤器  623 29.3  DLPI:数据链路提供者接口  625 29.4  Linux:SOCK_PACKET和 PF_PACKET  626 29.5  libpcap:分组捕获函数库  627 29.6  libnet:分组构造与输出函数库  627 29.7  检查UDP的校验和字段  628 29.8  小结  5 习题  5 第30章  客户/服务器程序设计范式  6 30.1  概述  6 30.2  TCP客户程序设计范式  8 30.3  TCP测试用客户程序  9 30.4  TCP迭代服务器程序  650 30.5  TCP并发服务器程序, 每个客户一个子进程  650 30.6  TCP预先派生子进程服务器程序,accept无上锁保护  653 30.7  TCP预先派生子进程服务器程序,accept使用文件上锁保护  659 30.8  TCP预先派生子进程服务器程序,accept使用线程上锁保护  662 30.9  TCP预先派生子进程服务器程序,传递描述符  663 30.10  TCP并发服务器程序,每个客户一个线程  667 30.11  TCP预先创建线程服务器程序,每个线程各自accept  669 30.12  TCP预先创建线程服务器程序,主线程统一accept  671 30.13  小结  673 习题  674 第31章  流  675 31.1  概述  675 31.2  概貌  675 31.3  getmsg和putmsg函数  678 31.4  getpmsg和putpmsg函数  679 31.5  ioctl函数  680 31.6  TPI:传输提供者接口  680 31.7  小结  689 习题  689 附录A  IPv4、IPv6、ICMPv4和ICMPv6  690 附录B  虚拟网络  704 附录C  调试技术  708 附录D  杂凑的源代码  714 附录E  精选习题答案  726 参考文献  756 索引  763
内容简介
本书是UNIX网络编程的经典之作。书中全面深入地介绍了如何使用套接字API进行网络编程。全书不但介绍了基本编程内容,还涵盖了与套接字编程相关的不错主题,对于客户/服务器程序的各种设计方法也作了完整的探讨,后还深入分析了流这种设备驱动机制。 本书内容详尽且具性,几乎每章都提供精选的习题,并提供了部分习题的答案,是网络研究和开发人员理想的参考书。
作者简介
[美]W. 理查德·史蒂文斯(W. Richard Stevens)比尔·芬纳(Bill Fenner) 安德鲁·M. 鲁道夫(Andrew M.Rudoff) 著 无 译
W. 理查德·史蒂文斯(W. Richard Stevens)(1951—1999) GUO际的UNIX和网络专家,备受赞誉的技术作家。生前著有《TCP/IP详解》(三卷)、《UNIX环境不错编程》和《UNIX网络编程》(两卷),均为不朽的经典著作。 比尔·芬纳(Bill Fenner) AT&T实验室主任研究员,专攻IP多播、网络管理和测量,他是IETF路由的领域主管之一,是RFC标准文档的批准人。 安德鲁·M. 鲁道夫(Andrew M.Rudoff) Sun公司软件工程师,专攻网络、操作系统内核、文件系统和高可用性软件体系结构。