
Linux 高性能服务器编程:服务器程序规范 5
概述 守护进程 Linux服务器程序一般以后台进程形式运行。后台进程又称为守护进程(daemon)。 它没有控制终端,因而也不会意外接收到用户收入。 守护进程的父进程通常是init进程(PID为1的进程)。 日志 Linux服务器程序通常有一套日志系统,它至少能输出日志到文件,有...
概述 守护进程 Linux服务器程序一般以后台进程形式运行。后台进程又称为守护进程(daemon)。 它没有控制终端,因而也不会意外接收到用户收入。 守护进程的父进程通常是init进程(PID为1的进程)。 日志 Linux服务器程序通常有一套日志系统,它至少能输出日志到文件,有...
pipe pipe用于创建一个管道,以实现进程间通信。 pipe函数的参数是一个包含两个int的数组指针。 该函数成功时返回0,并将一对打开的文件描述符值填入其参数指向的数组。 如果失败,返回-1并设置errno。 通过pipe创建的这两个文件描述符fd[0]和fd[1]分别构成...
网络信息API gethostbyname和gethostbyaddr gethostbyname根据主机名称获取主机的完整信息。这个函数是通常先在本地的/etc/hosts.conf配置文件中查找主机,如果没有找到,再去访问DNS服务器。 gethostbyaddr根据IP地址...
socket地址API 字节序 现代CPU的累加器一次都能装载(至少)4个字节(32位机器),即一个整数。 这4个字节在内存中排列的顺序将影响它被累加器装载成的整数的值,这就是字节序问题。 字节序分为大端字节序和小端字节序。 大端字节序是指整数的高位字节存储在内存的低地址处,低位...
TCP/IP通信案例 HTTP代理服务器的工作原理 在HTTP通信链上,客户端和目标服务器之间通常存在某些中转代理服务器,它们提供对目标资源的中转访问。 一个HTTP请求可能被多个代理服务器转发,后面的服务器称为前面服务器的上游服务器。 代理服务器按照其使用方式和作用,分为正向代...
TCP的建立和关闭 复位报文段 在某些特殊的情况,TCP连接的一端会向另一端发送携带RST标志的报文段,即复位报文段,以通知对方关闭连接或重新建立连接。 收到复位报文段的一端应该关闭连接或重新连接,而不能回应这个复位报文段。 异常终止连接 TCP提供了异常终止一个连接的方法,即给...
TCP特点 面向连接 字节流 可靠传输 关于TCP 使用TCP通信的双方必须先建立连接,然后才能开始数据的读写。 双方都必须为该连接分配必要的内核资源,以管理连接的状态和连接上数据的传输。 TCP连接是全双工的,双方的数据读写可以通过一个连接进行。完成数据交换之后,通信双方都必须...
IP协议 概述 IP协议是TCP/IP协议族的核心协议,也是socket网络编程的基础之一。 IP头部信息出现在每个IP数据报中,用于指定IP通信的源端IP地址、目标端IP地址,指导IP分片和重组,以及指定部分通信行为。 IP数据报的路由和转发发生在除目标机器之外的所有主机和路由...
TCP/IP协议族 TCP/IP是一个四层协议系统,自底而上分别是数据链路层、网络层、传输层和应用层。 数据链路层 实现了网卡接口的网络驱动程序,以处理数据在物理媒介上的传输。 常用协议 ARP RARP 网络层使用IP地址寻址一台机器,而数据链路层使用物理地址寻址一台机器,因此...
结构 由客户端和服务端组成。 有两个不兼容的版本分别是:1.x和2.x。 用SSH 2.x的客户程序是不能连接到SSH 1.x的服务程序上去的。 OpenSSH 2.x同时支持SSH 1.x和2.x。 服务端是一个守护进程(daemon),他在后台运行并响应来自客户端的连接请求。...