forked from rpodgorny/xotd
-
Notifications
You must be signed in to change notification settings - Fork 1
xotd: XOT (X.25 over TCP)
License
BAN-AI-X25/xotd
Folders and files
Name | Name | Last commit message | Last commit date | |
---|---|---|---|---|
Repository files navigation
README Information about the xotd package Stephane Fillod's Original README as is - Shaun July 2007 Notes ----- This is xotd 0.04, the third release of the XOT daemon for Linux. Please test it as much as possible and report me success stories! I'd be interested to hear about tests with Cisco routers, and other XOT implementation like SUNlink. You need recent kernel 2.1.1xx or later to use this program. This program should compile cleanly with either libc5 and glibc (please send me reports). xotd requires the x25tap patch to be applied to the kernel (2.1.115+). With this patch, it is possible to have an X.25 device driver in user land, and build bridging systems. x25tap is cloned from ethertap. cd /usr/src patch -p0 < x25tap.diff So rebuild your patched kernel with the following options: Kernel/User netlink socket (CONFIG_NETLINK) [Y/n/?] CCITT X.25 Packet Layer (EXPERIMENTAL) (CONFIG_X25) [M/n/y/?] X.25tap network tap (CONFIG_X25TAP) [M/n/y/?] Next, to compile xotd, just type "make". Since xotd is a multithreaded program, the LinuxThreads library must be installed (builtin glibc-2.x). [ Programming discussion: xotd could be coded as a monothreaded program, but IMHO, a select on more than 30 sockets and is not very efficient, and waiting to read entirely a big packet waste to much time. Buffering is rather painfull. fork()ing would be much simpler, but sharing the hash table wouldn't be easy. To my mind, the multithreaded program is a good compromise, and obviously, the best solution would be to code xotd as a kernel thread and get rid of x25tap. It's not for tomorrow, but maybe for the day after tomorrow :-) End of discussion ] There is a patch also for X.25 support in net-tools. The patch was made for net-tools 1.45, so expect it to be merged by the following releases. x25-utils should work too, but is obsoleted by the previous patch. For people having Cisco routers, here is a mail from Pasi, which explain how XOT works: From: Pasi Kaara <ppk@atk.tpo.fi> Date: Sat, 19 Aug 95 14:09:44 EETDST Normal use of XOT host ---x.25-line---[CISCO]--WAN/LAN link (TCP/IP)--[CISCO]---x.25-line-- host With rfc1613 software on Linux: Linux ---LAN---[CISCO]--x.25--line (serial) On the cisco side your configuration is like: ------------- x25 route 244123456.* ip <ip-number of linux machine> ------------- Only ONE line! You can use also normal IP-access-lists to controll access to XOT port. On the Linux side, here is how to add a default route: insmod x25tap ifconfig x25tap0 up xotd x25tap0 <ip-number of Cisco router> route --x25 add 0/0 x25tap0 Don't forget to insert x25 and x25tap modules before (if compiled as modules). xotd can also work in "loopback", that is working on a stand alone machine, but you will be connected only with yourself! It is only for debugging purpose, or to play with X.25 sockets (educational purpose, etc.). Even if the command "xotd x25tap0 localhost" works, the X.25 stack would be in collision because of the LCI numbers. So, the workaround for XOT loopback, is the following: insmod x25tap ifconfig x25tap0 up route --x25 add 123/3 x25tap0 insmod -o x25tap1 x25tap unit=1 ifconfig x25tap1 up route --x25 add 2080/4 x25tap1 xotd -l 1999 x25tap0 localhost & xotd -r 1999 x25tap1 localhost & This trick is not supported, and should be used only for debugging purposes! Have fun with it, and please report bugs, success stories, patches; I'd really appreciate! Stephane Fillod sfillod@charybde.gyptis.frmug.org 8 January 1999 README from Denis Zavgorodny Thank you for developing this program. This, very necessary software for me, was finalized and rolled for my purposes. This software is tested for RHEL Server release 5.3 beta kernel 2.6.18-120.el5. with another such same server. Hardware information: Dell PowerEdge T410,Intel® Xeon® 5500 2.53 GHz 12MB 4 core, RAM 4 GB, BroadCom NetXtreme II Gigabit Ethernet. Test results: - baud rate over a single connection X.25 (packet length 256 bytes, window 7) - 6.8 Mbps. - total transfer rate for many parallel connections It is limited by Ethernet speed (100Mbit,) and is 60 Mbit/s with packet length 256 bytes, window 7 80 Mbit/s with packet length 1024, window 7 Limit on the maximum number of virtual connections - 300 is due to the maximum amount of virtual memory in one process in 32 bit Linux OS version - 3 gigabytes. XOTd multithreaded server application (pthreads). One stream is allocated 10 megabytes of virtual memory on the stack. Total 10MB for 300 streams is 3 GB. If necessary, this limitation can be removed, or by reducing the amount of memory per thread (using ulimit in init script), or using a 64-bit version of the Linux OS. Goodbye! (all claims to English to google translator ;) 2018
About
xotd: XOT (X.25 over TCP)
Topics
Resources
License
Stars
Watchers
Forks
Languages
- C 99.2%
- Makefile 0.8%