深入理解计算机操作系统——第11章:套接字接口

套接字接口:

套接字接口是一组函数,它们和Unix IO结合起来,用以创建网络应用。

14.4.1 套接字的地址结构

(1)从unix内核来看,一个套接字就是通信的一个端点。

(2)从unix应用程序来看,一个套接字就是一个有相应描述符的打开文件。

英特网的套接字地址结构如下:

11.4.2 socket函数

(1)AF_INET表明我们正在使用的是英特网

(2)SOCKE_STREAM 表示这个套接字是英特网连接的一个端点

(3)socket返回的clientfd描述符仅是部分打开的,还不能用于读写。

11.4.3 connect函数

 客户端通过调用conect函数来建立和服务器的连接

14.4.4 open_clientfd函数

将socket和conect函数包装而成。客户端可以用它来和服务器建立连接。

在服务器端,bind,linsten,accept被用来和客户端建立连接。

14.4.5 bind函数

14.4.6 listen函数

服务器调用listen函数,告诉内核描述符是被服务器而不是客户端使用的。

11.4.7 open_listenfd函数

将socket,bind,listen组合成而成。

11.4.8 accept函数

监听描述符和连接描述符的区别:

监听描述符

(1)监听描述符是作为客户端请求连接的一个端点(由服务器创建)。

(2)典型的它被创建一次,并存在于服务器的整个生命周期。

已连接描述符

(3)已连接描述符是客户端和服务器之间已经建立起来的连接一个端点。

(4)服务器每次接受连接请求时都会创建一次。

(5)它只存在于服务器为一个客户端服务的过程中。

原文地址:https://www.cnblogs.com/yanliang12138/p/4777794.html