zoukankan      html  css  js  c++  java
  • x25, PF_X25

    总览

    #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)还不会传播给用户进程。因此,如果重置,可能会发生数据丢失而得不到任何提示。 

  • 相关阅读:
    js在微信、微博、QQ、Safari唤起App的解决方案
    js根据ip自动获取地址(省市区)
    css行内省略号、垂直居中
    PAT1006
    PAT1005
    PAT1004
    PAT1003
    PAT1002
    PAT1001
    latex中的空格
  • 原文地址:https://www.cnblogs.com/fanweisheng/p/11102391.html
Copyright © 2011-2022 走看看