Java TCP_IP Socket编程(原书第2版)
目 录
译者序
前言
第1章 简介
1.1 计算机网络、分组报文和协议1.2 关于地址1.3 关于名字1.4 客户端和服务器1.5 什么是套接字1.6 练习
第2章 基本套接字
2.1 套接字地址2.2 TCP套接字2.2.1 TCP客户端2.2.2 TCP服务器端2.2.3 输入输出流2.3 UDP套接字2.3.1 DatagramPacket类2.3.2 UDP客户端2.3.3 UDP服务器端2.3.4 使用UDP套接字发送和接收信息2.4 练习
第3章 发送和接收数据
3.1 信息编码3.1.1 基本整型3.1.2 字符串和文本3.1.3 位操作:布尔值编码3.2 组合输入输出流3.3 成帧与解析3.4 Java特定编码3.5 构建和解析协议消息3.5.1 基于文本的表示方法3.5.2 二进制表示方法3.5.3 发送和接收3.6 结束3.7 练习
第4章 进阶
4.1 多任务处理4.1.1 Java多线程4.1.2 服务器协议4.1.3 一客户一线程4.1.4 线程池4.1.5 系统管理调度:Executor接口4.2 阻塞和超时4.2.1 accept()、read()和receive()4.2.2 连接和写数据4.2.3 限制每个客户端的时间4.3 多接收者4.3.1 广播4.3.2 多播4.4 控制默认行为4.4.1 Keep-Alive4.4.2 发送和接收缓存区的大小4.4.3 超时4.4.4 地址重用4.4.5 消除缓冲延迟4.4.6 紧急数据4.4.7 关闭后停留4.4.8 广播许可4.4.9 通信等级4.4.10 基于性能的协议选择4.5 关闭连接4.6 Applet4.7 结束4.8 练习
第5章 NIO
5.1 为什么需要NIO5.2 与Buffer一起使用Channel5.3 Selector5.4 Buffer详解5.4.1 Buffer索引5.4.2 创建Buffer5.4.3 存储和接收数据5.4.4 准备Buffer:clear()、flip()和rewind()5.4.5 压缩Buffer中的数据5.4.6 Buffer透视:duplicate()和slice()等5.4.7 字符编码5.5 流(TCP)信道详解5.6 Selector详解5.6.1 在信道中注册5.6.2 选取和识别准备就绪的信道5.6.3 信道附件5.6.4 Selector小结5.7 数据报(UDP)信道5.8 练习
第6章 深入剖析
6.1 缓冲和TCP6.2 死锁风险6.3 性能相关6.4 TCP套接字的生存周期6.4.1 连接6.4.2 关闭TCP连接6.5 解调多路复用揭秘6.6 练习
评论