⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 readme.x25

📁 《嵌入式系统设计与实例开发实验教材二源码》Linux内核移植与编译实验
💻 X25
字号:
  X.25 support within isdn4linux==============================This is alpha/beta test code. Use it completely at your own risk.As new versions appear, the stuff described here might suddenly changeor become invalid without notice.Keep in mind:You are using several new parts of the 2.2.x kernel series whichhave not been tested in a large scale. Therefore, you might encountermore bugs as usual.- If you connect to an X.25 neighbour not operated by yourself, ASK the  other side first. Be prepared that bugs in the protocol implementation  might result in problems.- This implementation has never wiped out my whole hard disk yet. But as  this is experimental code, don't blame me if that happened to you.  Backing up important data will never harm.- Monitor your isdn connections while using this software. This should  prevent you from undesired phone bills in case of driver problems.   How to configure the kernel=========================== The ITU-T (former CCITT) X.25 network protocol layer has been implementedin the Linux source tree since version 2.1.16. The isdn subsystem might be useful to run X.25 on top of ISDN. If you want to try it, select   "CCITT X.25 Packet Layer"from the networking options as well as   "ISDN Support" and "X.25 PLP on Top of ISDN"from the ISDN subsystem options when you configure your kernel forcompilation. You currently also need to enable"Prompt for development and/or incomplete code/drivers" from the"Code maturity level options" menu. For the x25trace utility to workyou also need to enable "Packet socket".For local testing it is also recommended to enable the isdnloop driverfrom the isdn subsystem's configuration menu.For testing, it is recommended that all isdn drivers and the X.25 PLPprotocol are compiled as loadable modules. Like this, you can recoverfrom certain errors by simply unloading and reloading the modules.What's it for? How to use it?=============================X.25 on top of isdn might be useful with two different scenarios:- You might want to access a public X.25 data network from your Linux box.  You can use i4l if you were physically connected to the X.25 switch  by an ISDN B-channel (leased line as well as dial up connection should  work).  This corresponds to ITU-T recommendation X.31 Case A (circuit-mode  access to PSPDN [packet switched public data network]).  NOTE: X.31 also covers a Case B (access to PSPDN via virtual  circuit / packet mode service). The latter mode (which in theory  also allows using the D-channel) is not supported by isdn4linux.  It should however be possible to establish such packet mode connections  with certain active isdn cards provided that the firmware supports X.31  and the driver exports this functionality to the user. Currently,   the AVM B1 driver is the only driver which does so. (It should be  possible to access D-channel X.31 with active AVM cards using the  CAPI interface of the AVM-B1 driver).- Or you might want to operate certain ISDN teleservices on your linux  box. A lot of those teleservices run on top of the ISO-8208  (DTE-DTE mode) network layer protocol. ISO-8208 is essentially the  same as ITU-T X.25.  Popular candidates of such teleservices are EUROfile transfer or any  teleservice applying ITU-T recommendation T.90.To use the X.25 protocol on top of isdn, just create an isdn networkinterface as usual, configure your own and/or peer's ISDN numbers,and choose x25iface encapsulation by   isdnctrl encap <iface-name> x25iface.Once encap is set like this, the device can be used by the X.25 packet layer.All the stuff needed for X.25 is implemented inside the isdn linklevel (mainly isdn_net.c and some new source files). Thus, it shouldwork with every existing HL driver. I was able to successfully open X.25connections on top of the isdnloop driver and the hisax driver."x25iface"-encapsulation bypasses demand dialing. Dialing will beinitiated when the upper (X.25 packet) layer requests the lapb datalink tobe established. But hangup timeout is still active. Whenever a hangupoccurs, all existing X.25 connections on that link will be clearedIt is recommended to use sufficiently large hangup-timeouts for theisdn interfaces.In order to set up a conforming protocol stack you also need tospecify the proper l2_prot parameter:To operate in ISO-8208  X.25 DTE-DTE mode, use   isdnctrl l2_prot <iface-name> x75iTo access an X.25 network switch via isdn (your linux box is the DTE), use   isdnctrl l2_prot <iface-name> x25dteTo mimic an X.25 network switch (DCE side of the connection), use   isdnctrl l2_prot <iface-name> x25dceHowever, x25dte or x25dce is currently not supported by any real HLlevel driver. The main difference between x75i and x25dte/dce is thatx25d[tc]e uses fixed lap_b addresses. With x75i, the side whichinitiates the isdn connection uses the DTE's lap_b address while thecalled side used the DCE's lap_b address. Thus, l2_prot x75i mightprobably work if you access a public X.25 network as long as thecorresponding isdn connection is set up by you. At least one testwas successful to connect via isdn4linux to an X.25 switch using thistrick. At the switch side, a terminal adapter X.21 was used to connectit to the isdn.How to set up a test installation?==================================To test X.25 on top of isdn, you need to get- a recent version of the "isdnctrl" program that supports setting the new  X.25 specific parameters.- the x25-utils-2.X package from   ftp://ftp.hes.iki.fi/pub/ham/linux/ax25/x25utils-*  (don't confuse the x25-utils with the ax25-utils)- an application program that uses linux PF_X25 sockets (some are  contained in the x25-util package).Before compiling the user level utilities make sure that the compiler/preprocessor will fetch the proper kernel header files of this kernelsource tree. Either make /usr/include/linux a symbolic link pointing to this kernel's include/linux directory or set the appropriate compiler flags.When all drivers and interfaces are loaded and configured you need toifconfig the network interfaces up and add X.25-routes to them. Usethe usual ifconfig tool.ifconfig <iface-name> upBut a special x25route tool (distributed with the x25-util package)is needed to set up X.25 routes. I.e. x25route add 01 <iface-name>will cause all x.25 connections to the destination X.25-address"01" to be routed to your created isdn network interface.There are currently no real X.25 applications available. However, fortests, the x25-utils package contains a modified version of telnetand telnetd that uses X.25 sockets instead of tcp/ip sockets. You canuse those for your first tests. Furthermore, you might checkftp://ftp.hamburg.pop.de/pub/LOCAL/linux/i4l-eft/ which contains somealpha-test implementation ("eftp4linux") of the EUROfile transferprotocol.The scripts distributed with the eftp4linux test releases might alsoprovide useful examples for setting up X.25 on top of isdn.The x25-utility package also contains an x25trace tool that can beused to monitor X.25 packets received by the network interfaces.The /proc/net/x25* files also contain useful information. - Henner

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -