README.x25
上传用户:lgb322
上传日期:2013-02-24
资源大小:30529k
文件大小:7k
源码类别:

嵌入式Linux

开发平台:

Unix_Linux

  1.   
  2. X.25 support within isdn4linux
  3. ==============================
  4. This is alpha/beta test code. Use it completely at your own risk.
  5. As new versions appear, the stuff described here might suddenly change
  6. or become invalid without notice.
  7. Keep in mind:
  8. You are using several new parts of the 2.2.x kernel series which
  9. have not been tested in a large scale. Therefore, you might encounter
  10. more bugs as usual.
  11. - If you connect to an X.25 neighbour not operated by yourself, ASK the
  12.   other side first. Be prepared that bugs in the protocol implementation
  13.   might result in problems.
  14. - This implementation has never wiped out my whole hard disk yet. But as
  15.   this is experimental code, don't blame me if that happened to you.
  16.   Backing up important data will never harm.
  17. - Monitor your isdn connections while using this software. This should
  18.   prevent you from undesired phone bills in case of driver problems.
  19.   
  20.  
  21. How to configure the kernel
  22. ===========================
  23.  
  24. The ITU-T (former CCITT) X.25 network protocol layer has been implemented
  25. in the Linux source tree since version 2.1.16. The isdn subsystem might be 
  26. useful to run X.25 on top of ISDN. If you want to try it, select
  27.    "CCITT X.25 Packet Layer"
  28. from the networking options as well as
  29.    "ISDN Support" and "X.25 PLP on Top of ISDN"
  30. from the ISDN subsystem options when you configure your kernel for
  31. compilation. You currently also need to enable
  32. "Prompt for development and/or incomplete code/drivers" from the
  33. "Code maturity level options" menu. For the x25trace utility to work
  34. you also need to enable "Packet socket".
  35. For local testing it is also recommended to enable the isdnloop driver
  36. from the isdn subsystem's configuration menu.
  37. For testing, it is recommended that all isdn drivers and the X.25 PLP
  38. protocol are compiled as loadable modules. Like this, you can recover
  39. from certain errors by simply unloading and reloading the modules.
  40. What's it for? How to use it?
  41. =============================
  42. X.25 on top of isdn might be useful with two different scenarios:
  43. - You might want to access a public X.25 data network from your Linux box.
  44.   You can use i4l if you were physically connected to the X.25 switch
  45.   by an ISDN B-channel (leased line as well as dial up connection should
  46.   work).
  47.   This corresponds to ITU-T recommendation X.31 Case A (circuit-mode
  48.   access to PSPDN [packet switched public data network]).
  49.   NOTE: X.31 also covers a Case B (access to PSPDN via virtual
  50.   circuit / packet mode service). The latter mode (which in theory
  51.   also allows using the D-channel) is not supported by isdn4linux.
  52.   It should however be possible to establish such packet mode connections
  53.   with certain active isdn cards provided that the firmware supports X.31
  54.   and the driver exports this functionality to the user. Currently, 
  55.   the AVM B1 driver is the only driver which does so. (It should be
  56.   possible to access D-channel X.31 with active AVM cards using the
  57.   CAPI interface of the AVM-B1 driver).
  58. - Or you might want to operate certain ISDN teleservices on your linux
  59.   box. A lot of those teleservices run on top of the ISO-8208
  60.   (DTE-DTE mode) network layer protocol. ISO-8208 is essentially the
  61.   same as ITU-T X.25.
  62.   Popular candidates of such teleservices are EUROfile transfer or any
  63.   teleservice applying ITU-T recommendation T.90.
  64. To use the X.25 protocol on top of isdn, just create an isdn network
  65. interface as usual, configure your own and/or peer's ISDN numbers,
  66. and choose x25iface encapsulation by
  67.    isdnctrl encap <iface-name> x25iface.
  68. Once encap is set like this, the device can be used by the X.25 packet layer.
  69. All the stuff needed for X.25 is implemented inside the isdn link
  70. level (mainly isdn_net.c and some new source files). Thus, it should
  71. work with every existing HL driver. I was able to successfully open X.25
  72. connections on top of the isdnloop driver and the hisax driver.
  73. "x25iface"-encapsulation bypasses demand dialing. Dialing will be
  74. initiated when the upper (X.25 packet) layer requests the lapb datalink to
  75. be established. But hangup timeout is still active. Whenever a hangup
  76. occurs, all existing X.25 connections on that link will be cleared
  77. It is recommended to use sufficiently large hangup-timeouts for the
  78. isdn interfaces.
  79. In order to set up a conforming protocol stack you also need to
  80. specify the proper l2_prot parameter:
  81. To operate in ISO-8208  X.25 DTE-DTE mode, use
  82.    isdnctrl l2_prot <iface-name> x75i
  83. To access an X.25 network switch via isdn (your linux box is the DTE), use
  84.    isdnctrl l2_prot <iface-name> x25dte
  85. To mimic an X.25 network switch (DCE side of the connection), use
  86.    isdnctrl l2_prot <iface-name> x25dce
  87. However, x25dte or x25dce is currently not supported by any real HL
  88. level driver. The main difference between x75i and x25dte/dce is that
  89. x25d[tc]e uses fixed lap_b addresses. With x75i, the side which
  90. initiates the isdn connection uses the DTE's lap_b address while the
  91. called side used the DCE's lap_b address. Thus, l2_prot x75i might
  92. probably work if you access a public X.25 network as long as the
  93. corresponding isdn connection is set up by you. At least one test
  94. was successful to connect via isdn4linux to an X.25 switch using this
  95. trick. At the switch side, a terminal adapter X.21 was used to connect
  96. it to the isdn.
  97. How to set up a test installation?
  98. ==================================
  99. To test X.25 on top of isdn, you need to get
  100. - a recent version of the "isdnctrl" program that supports setting the new
  101.   X.25 specific parameters.
  102. - the x25-utils-2.X package from 
  103.   ftp://ftp.hes.iki.fi/pub/ham/linux/ax25/x25utils-*
  104.   (don't confuse the x25-utils with the ax25-utils)
  105. - an application program that uses linux PF_X25 sockets (some are
  106.   contained in the x25-util package).
  107. Before compiling the user level utilities make sure that the compiler/
  108. preprocessor will fetch the proper kernel header files of this kernel
  109. source tree. Either make /usr/include/linux a symbolic link pointing to 
  110. this kernel's include/linux directory or set the appropriate compiler flags.
  111. When all drivers and interfaces are loaded and configured you need to
  112. ifconfig the network interfaces up and add X.25-routes to them. Use
  113. the usual ifconfig tool.
  114. ifconfig <iface-name> up
  115. But a special x25route tool (distributed with the x25-util package)
  116. is needed to set up X.25 routes. I.e. 
  117. x25route add 01 <iface-name>
  118. will cause all x.25 connections to the destination X.25-address
  119. "01" to be routed to your created isdn network interface.
  120. There are currently no real X.25 applications available. However, for
  121. tests, the x25-utils package contains a modified version of telnet
  122. and telnetd that uses X.25 sockets instead of tcp/ip sockets. You can
  123. use those for your first tests. Furthermore, you might check
  124. ftp://ftp.hamburg.pop.de/pub/LOCAL/linux/i4l-eft/ which contains some
  125. alpha-test implementation ("eftp4linux") of the EUROfile transfer
  126. protocol.
  127. The scripts distributed with the eftp4linux test releases might also
  128. provide useful examples for setting up X.25 on top of isdn.
  129. The x25-utility package also contains an x25trace tool that can be
  130. used to monitor X.25 packets received by the network interfaces.
  131. The /proc/net/x25* files also contain useful information. 
  132. - Henner