📄 47.htm
字号:
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312">
<title>CTerm非常精华下载</title>
</head>
<body bgcolor="#FFFFFF">
<table border="0" width="100%" cellspacing="0" cellpadding="0" height="577">
<tr><td width="32%" rowspan="3" height="123"><img src="DDl_back.jpg" width="300" height="129" alt="DDl_back.jpg"></td><td width="30%" background="DDl_back2.jpg" height="35"><p align="center"><a href="http://apue.dhs.org"><font face="黑体"><big><big>123</big></big></font></a></td></tr>
<tr>
<td width="68%" background="DDl_back2.jpg" height="44"><big><big><font face="黑体"><p align="center"> ● UNIX网络编程 (BM: clown) </font></big></big></td></tr>
<tr>
<td width="68%" height="44" bgcolor="#000000"><font face="黑体"><big><big><p align="center"></big></big><a href="http://cterm.163.net"><img src="banner.gif" width="400" height="60" alt="banner.gif"border="0"></a></font></td>
</tr>
<tr><td width="100%" colspan="2" height="100" align="center" valign="top"><br><p align="center">[<a href="index.htm">回到开始</a>][<a href="19.htm">上一层</a>][<a href="48.htm">下一篇</a>]
<hr><p align="left"><small> <br>
Linux网络编程--8. 套接字选项 <br>
http://linuxc.51.net 作者:hoyt (2001-05-08 11:23:24) <br>
有时候我们要控制套接字的行为(如修改缓冲区的大小),这个时候我们就要控制套接字的 <br>
选项了. <br>
8.1 getsockopt和setsockopt <br>
int getsockopt(int sockfd,int level,int optname,void *optval,socklen_t *optl <br>
en) <br>
int setsockopt(int sockfd,int level,int optname,const void *optval,socklen_t <br>
*optlen) <br>
level指定控制套接字的层次.可以取三种值: 1)SOL_SOCKET:通用套接字选项. 2)IPPRO <br>
TO_IP:IP选项. 3)IPPROTO_TCP:TCP选项. <br>
optname指定控制的方式(选项的名称),我们下面详细解释 <br>
optval获得或者是设置套接字选项.根据选项名称的数据类型进行转换 <br>
选项名称 说明 数据类型 <br>
======================================================================== <br>
SOL_SOCKET <br>
------------------------------------------------------------------------ <br>
SO_BROADCAST 允许发送广播数据 int <br>
SO_DEBUG 允许调试 int <br>
SO_DONTROUTE 不查找路由 int <br>
SO_ERROR 获得套接字错误 int <br>
SO_KEEPALIVE 保持连接 int <br>
SO_LINGER 延迟关闭连接 struct linge <br>
r <br>
SO_OOBINLINE 带外数据放入正常数据流 int <br>
SO_RCVBUF 接收缓冲区大小 int <br>
SO_SNDBUF 发送缓冲区大小 int <br>
SO_RCVLOWAT 接收缓冲区下限 int <br>
SO_SNDLOWAT 发送缓冲区下限 int <br>
SO_RCVTIMEO 接收超时 struct timev <br>
al <br>
SO_SNDTIMEO 发送超时 struct timev <br>
al <br>
SO_REUSERADDR 允许重用本地地址和端口 int <br>
SO_TYPE 获得套接字类型 int <br>
SO_BSDCOMPAT 与BSD系统兼容 int <br>
========================================================================== <br>
IPPROTO_IP <br>
-------------------------------------------------------------------------- <br>
IP_HDRINCL 在数据包中包含IP首部 int <br>
IP_OPTINOS IP首部选项 int <br>
IP_TOS 服务类型 <br>
IP_TTL 生存时间 int <br>
========================================================================== <br>
IPPRO_TCP <br>
-------------------------------------------------------------------------- <br>
TCP_MAXSEG TCP最大数据段的大小 int <br>
TCP_NODELAY 不使用Nagle算法 int <br>
========================================================================= <br>
关于这些选项的详细情况请查看 Linux Programmer's Manual <br>
8.2 ioctl <br>
ioctl可以控制所有的文件描述符的情况,这里介绍一下控制套接字的选项. <br>
int ioctl(int fd,int req,...) <br>
========================================================================== <br>
ioctl的控制选项 <br>
-------------------------------------------------------------------------- <br>
SIOCATMARK 是否到达带外标记 int <br>
FIOASYNC 异步输入/输出标志 int <br>
FIONREAD 缓冲区可读的字节数 int <br>
========================================================================== <br>
详细的选项请用 man ioctl_list 查看. <br>
---------------------------------------------------------------------------- <br>
---- <br>
相关文章 关键词 <br>
Linux网络编程--7. TCP/IP协议 (2001-05-08 11:22:40) <br>
Linux网络编程--6. 高级套接字函数 (2001-05-08 11:22:09) <br>
Linux网络编程--5. 用户数据报发送 (2001-05-08 11:21:31) <br>
Linux网络编程--4. 完整的读写函数 (2001-05-08 11:20:52) <br>
Linux网络编程--3. 服务器和客户机的信息函数 (2001-05-08 11:20:14) <br>
Linux网络编程--2. 初等网络函数介绍(TCP) (2001-05-08 11:19:34) <br>
Linux网络编程--1. Linux网络知识介绍 (2001-05-08 11:16:55) <br>
樊强制作 欢迎分享 2001 <br>
<br>
</small><hr>
<p align="center">[<a href="index.htm">回到开始</a>][<a href="19.htm">上一层</a>][<a href="48.htm">下一篇</a>]
<p align="center"><a href="http://cterm.163.net">欢迎访问Cterm主页</a></p>
</table>
</body>
</html>
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -