码迷,mamicode.com
首页 > 其他好文 > 详细

x25, PF_X25 - ITU-T X.25 / ISO-8208 协议接口。

时间:2019-06-28 14:26:18      阅读:121      评论:0      收藏:0      [点我收藏+]

标签:系统   其他   family   版本   程序   丢失   数据包   include   mil   

总览

#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 协议接口。

标签:系统   其他   family   版本   程序   丢失   数据包   include   mil   

原文地址:https://www.cnblogs.com/fanweisheng/p/11102391.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!