124 posts
Location
Seattle, WA
Posted 27 April 2015 - 05:31 PM
Introducing libnet
a computercraft network stack
~
What is it?Real-world based networking for computercraft!How does it work?It uses the popular TCP/IP protocols, and supports (almost!) everything they currently support! Including packet switching, routing, reliable transfer, ICMP, and more!
MotiveI'm a currently preparing myself for the COMPTIA Network+ exams and decided to write TCP/IP inspired network framework for CC.IntroductionThis introduces access to the <whateveryouwanttonameit> api! It can be loaded via <name> = loadfile('/wherever/you/put/it.lua')(), and should work ontop of any operating system.Limitations- No waiting to recieve data (TCP like, but it's in the works)
- Currently depends on https://github.com/TARDIX/Chameleon (check the branch libnet!)
- Doesn't break data into packets (yet)
- Doesn't give packets unique IDs (yet)
Advantages over rednet- Fast development ;)/>
- Data is always reliably delivered.
- Allows sending data over block limit.
- Allows different IPs over each new interface
- Check if a machine is up by sending it ICMP type 0 code 1 (ping)
- Check the network setup by sending a IP ICMP type 0 code 2 (traceroute)
- Open governed.
Planned features:- rednet fallback
- Full TCP/IP specifications
- IPv6 support
- true routing
- true packet switching
Specifications (for anyone wanting to potentially implement it themselves)https://github.com/T...cs/rfclibnet.mdSource / Downloadhttps://github.com/TARDIX/Chameleon/blob/libnet/usr/lib/libnet.luaNOTICE: While this is currently not implemented for anything other than TARDIX, it is a high priority and requires just a backup device library. (simple)This post is more of a call-to-arms about libnet's potential as a networking library, please, provide feedback on any of it!
Edited on 27 April 2015 - 03:37 PM
1847 posts
Location
/home/dannysmc95
Posted 27 April 2015 - 05:33 PM
It looks cool!!! Not sure what it completely does but nice! :D/>
Hang on is it a new version of rednet? :o/>
124 posts
Location
Seattle, WA
Posted 27 April 2015 - 05:44 PM
It looks cool!!! Not sure what it completely does but nice! :D/>
Hang on is it a new version of rednet? :o/>
Technically,
yes. It provides a bunch of new methods, not directly added to rednet, but they provide a completely new networking expirence. However, it runs ontop of rednet.
2679 posts
Location
You will never find me, muhahahahahaha
Posted 27 April 2015 - 06:02 PM
Oh, man with another CCer I was about to do the same. I guess we still will work on the project so you have some concurrence and a reason to improve
124 posts
Location
Seattle, WA
Posted 27 April 2015 - 06:07 PM
Oh, man with another CCer I was about to do the same. I guess we still will work on the project so you have some concurrence and a reason to improve
Not to discourage others, but the whole idea of libnet (as a final design goal) is to support other pre-existing networking libraries, such as;
- bus networking \
- lyqdnet (ancient) /
Having another library to do the same exact thing just leads to compatabiliy issues :(/>
8543 posts
Posted 27 April 2015 - 06:39 PM
lyqdnet (ancient)
Yeah, I guess February 28th, 2015 (date of most recent commit) was a while ago. :P/>
Always interesting to see new networking systems, though.
355 posts
Location
Germany
Posted 27 April 2015 - 07:09 PM
Been studying networking in school too, and always wanted to make something, that works just like the ISO OSI model with rednet shortened to layer 1, and building up layer by layer. unfortunately I never got a lot of time to really focus on it, modelling it all through, since there are a lot of decisions to make, on how the "driver" part of all this provides his API, so that it's powerful as IPv4, but can be used by standard cc programs.
124 posts
Location
Seattle, WA
Posted 27 April 2015 - 07:44 PM
lyqdnet (ancient)
Yeah, I guess February 28th, 2015 (date of most recent commit) was a while ago. :P/>
Always interesting to see new networking systems, though.
On the topic to that, could you provide me a link to lyqdnet? I was having a
very hard time trying to find it.
8543 posts
Posted 27 April 2015 - 07:47 PM
Here's a
link to the forum topic, which also has a link to the github repo.
224 posts
Posted 30 April 2015 - 04:55 AM
Webdata has been one-up'd… crap