x25, PF_X25 - ITU-T X.25 / ISO-8208 协议接口。
Posted fanweisheng
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了x25, PF_X25 - ITU-T X.25 / ISO-8208 协议接口。相关的知识,希望对你有一定的参考价值。
总览
#include <sys/socket.h>
#include
<linux/x25.h>
x25_socket = socket(PF_X25, SOCK_SEQPACKET, 0);
描述
X25 sockets 为 X.25 数据包层协议(packet layer protocol)提供接口。这令应用程序可以使用标准的 ITU X.25 建议(X.25 DTE-DCE 模式)在公共 X.25 数据网中进行通讯。 X25 socket 也可以在没有在 ISO-8208中描述的那样的 X.25 中介(X.25 DTE-DCE 模式)的网络进行通讯.
信息分界的保持 - 对 socket 进行 read(2) 得到的数据块与对端 socket 对应 write(2) 动作输出的数据块是完全一样的.如果必要,内核负责处理信息片段和重组长信息,用的是 X.25 M-bit 方法(校注:请懂 x.25 的同志指正)。对信息大小没有硬编码的上限。 但是重组长信息有时会失败(比如系统资源暂时匮乏,或是出现其他的诸如此类的限制时)。如果出现这种情况,X.25 连接将被重置。
套接口地址 SOCKET ADDRESS
AF_X25 socket 地址族用 struct sockaddr_x25 代表 ITU-T X.121 规范中定义的网络地址。
-
struct sockaddr_x25 sa_family_t sx25_family; /* 必须是 AF_X25 */ x25_address sx25_addr; /* X.121 地址 */ ;
sx25_addr 包含一个空零结尾的字符串 x25_addr[] 。 sx25_addr.x25_addr[] 由最多 15 个 ASCII 字符(不包括结束的 0)构成 X.121 地址。只能使用数字 `0‘ 到 `9‘ 。
套接字选项 SOCKET OPTIONS
以下 X.25 相关的套接字选项可以在级别参数设置为 SOL_X25 时用 setsockopt(2) 设定并可用 getsockopt(2) 读取。
- X25_QBITINCL
- 控制用户是否能够访问 X.25 Q-bit ((资格数据位)Qualified Data Bit)。接受整型参数。 如果设为 0 (缺省), 那么传出的数据包不设置 Q-bit 传入的数据包中的 Q-bit 被忽略。如果设为 1, 就会在通过该套接字传入传出的信息中附加一个前置的首字节。对于从套接字中数据, 首位字节的 0 表示对应的读入包未设置 Q-bit;而如果是 1 则相反。 如果通过套接字写入(传出)的数据中首位字节为 1 则传出包设置 Q-bit ,如果是 0 则不设置 Q-bit。
缺憾
有很多, 比如 X.25 PLP 实现 CONFIG_EXPERIMENTAL.(译注:内核编译选项,尚处于试验阶段)。
本手册页也不完善。
还没有给程序员用的头文件;您需要包含内核头文件 linux/x25.h CONFIG_EXPERIMENTAL 也暗示着未来的接口版本可能在二进制级别不兼容。
X.25 N-重置事件(Reset events)还不会传播给用户进程。因此,如果重置,可能会发生数据丢失而得不到任何提示。
以上是关于x25, PF_X25 - ITU-T X.25 / ISO-8208 协议接口。的主要内容,如果未能解决你的问题,请参考以下文章
如何存储多年的 100 x 25 Hz 时间序列 - Sql Server 或时间序列数据库