Python
Java
PHP
IOS
Android
Nodejs
JavaScript
Html5
Windows
Ubuntu
Linux
UNIX网络编程卷一 学习笔记 第三十章 客户/服务器程序设计范式
开发一个Unix服务器程序时 我们本书做过的进程控制 1 迭代服务器 iterative server 它的适用情形极为有限 因为这样的服务器在完成对当前客户的服务前无法处理已等待服务的新客户 2 并发服务器 concurrent serv
UNIX网络编程卷一(第三版)
unix
网络
学习
UNIX网络编程卷一 学习笔记 第二十九章 数据链路访问
目前大多操作系统都为程序提供访问数据链路层的功能 此功能可提供以下能力 1 能监视由数据链路层接收的分组 使得tcpdump之类的程序能运行 而无需专门的硬件设备来监视分组 如果结合使用网络接口进入混杂模式 promiscuous mode
UNIX网络编程卷一(第三版)
unix
UNIX网络编程卷一 学习笔记 第十三章 守护进程和inetd超级服务器
守护进程是在后台运行且不与任何控制终端关联的进程 Unix系统通常有很多守护进程在后台运行 约20到50个的量级 执行不同的管理任务 守护进程通常由系统初始化脚本 在开机时运行 启动 而没有控制终端是在系统初始化脚本中启动进程的副作用 但守
UNIX网络编程卷一(第三版)
unix
网络
学习
UNIX网络编程卷一 学习笔记 第一章 简介
编写通过计算机网络通信的程序时 首先要发明一种协议 即这些程序怎样进行通信 在深入设计一个协议的细节前 要在更高层次决定通信由哪个程序发起以及响应在何时产生 举例来说 一般认为web服务器是一个长时间运行的程序 即所谓守护程序 它只在响应来
UNIX网络编程卷一(第三版)
网络
unix
学习
UNIX网络编程卷一 学习笔记 第十二章 IPv4与IPv6的互操作性
未来数年内 因特网也许会逐渐从IPv4过渡到IPv6 在过渡阶段 基于IPv4的现有应用能与基于IPv6的全新应用协同工作非常重要 例如 厂商不应只提供仅能与IPv6 telnet服务器程序协同工作的telnet客户程序 而既应该提供能与I
UNIX网络编程卷一(第三版)
网络
unix
学习
UNIX网络编程卷一 学习笔记 第十七章 ioctl操作
ioctl函数传统上一直作为那些不适合归入现有已定义的类别的系统接口 POSIX正在通过创建特定的包装函数来代替ioctl函数的某些功能 以取而代之的是那些已被POSIX标准化的函数 例如 Unix终端接口传统上使用ioctl函数访问 而P
UNIX网络编程卷一(第三版)
unix
网络
学习
UNIX网络编程卷一 学习笔记 第十章 SCTP客户/服务器程序例子
编写一个一到多式SCTP回射客户 服务器程序 执行如下步骤 1 客户从标准输入读入一行文本 并发送给服务器 该文本行遵循 text格式 方括号中的数字表示要在这个流号上发送该文本消息 2 服务器从网络接收这个文本消息 并将接收消息的流号加1
UNIX网络编程卷一(第三版)
网络
unix
学习
UNIX网络编程卷一 学习笔记 第十一章 名字与地址转换
到目前为止 本书中所有例子都用数值地址表示主机 如206 6 226 33 用数值端口号来标识服务器 如端口13代表daytime服务器 但出于某些理由 我们应使用名字而非数值 名字比较容易记住 数值地址可以变动而名字保持不变 随着往IPv
UNIX网络编程卷一(第三版)
unix
网络
学习
UNIX网络编程卷一 学习笔记 第六章 I/O复用:select和poll函数
上一章中 TCP客户同时处理两个输入 标准输入和TCP套接字 我们遇到的问题是客户阻塞于标准输入上的fgets调用期间 服务器进程被杀死时 虽然服务器TCP正确地给客户TCP发送了一个FIN 但客户进程正阻塞于从标准输入读的过程 它将看不到
UNIX网络编程卷一(第三版)
网络
unix
学习
UNIX网络编程卷一 学习笔记 第二十二章 高级UDP套接字编程
TCP是一个字节流协议 又使用滑动窗口 因此没有记录边界或发送者数据发送能力超过接收者接收能力之类的事情 但对于UDP 每个输入操作对应一个UDP数据报 一个记录 因此当收取的数据报大于引用的输入缓冲区时就有问题 UDP是不可靠协议 但有些
UNIX网络编程卷一(第三版)
网络
unix
学习
UNIX网络编程卷一 学习笔记 第二十章 广播
本书迄今为止的所有例子都是单播 一个进程与另一个进程通信 TCP只支持单播寻址 而UDP和原始IP还支持其他寻址类型 下图比较了不同的寻址方式 IPv6往寻址体系中增加了任播 anycasting 方式 RFC 1546讲述了一个IPv4任
UNIX网络编程卷一(第三版)
网络
unix
学习