Jump to content
  • Sky
  • Blueberry
  • Slate
  • Blackcurrant
  • Watermelon
  • Strawberry
  • Orange
  • Banana
  • Apple
  • Emerald
  • Chocolate
  • Charcoal

DevonTheNovice

Members
  • Content Count

    10
  • Joined

  • Last visited

  • Days Won

    2

Posts posted by DevonTheNovice

  1. Back in the day, I had started to look into 

     and even attempted to develop

    An advanced networking system for OC. I failed before, but I feel I now have the experience and knowledge to truly pull it off (thanks to working in the field). So, I would like to re-introduce the Unet Project!

    The Unet framework is a full stack IP routing solution, featuring 64 bit IP address and subnet masks, VLANs, MAC (modem address) aware interfaces and the ability to be filtered by routers.

    The key behind Unet is its abstraction layer, aggregating all communications media (Loopback, Wired Modems, Wireless Modems,  Tunnel Cards, etc) into an interface, completely independent of the media. This vastly simplifies the transmission process. 

    These interfaces are then farther hidden behind the basic send command. When presented with an IP address, will automatically resolve which media to use and how in the following process.

    1. If an interface with this address exists on the local system, the message is immediately looped back on behalf of the interface.
    2. If an interface resides on the same subnet as this address,  it will be used to transmit the message
    3. If a route entry is found in the local route table that points to the subnet in which this interface resides, the routing information will be used in transmission
    4. If a default route is found, it will be used
    5. If no route is found, a route not found message will be looped back.

    In addition, an advanced series of router operating systems, both for microcontrollers (using side based transmission control) and full-fledged servers (using modem-side bindings and tunnel cards) Will allow massively scaled networks.

    In addition to the Unet IP addresses, the headers will have space for auxiliary transport layer info. An int will be used for Source IP addresses, a second int will be used for Destination IP Addresses, and a third int will contain an 8-bit hop counter, and a 16-bit protocol flag showing what the packet is carrying. At this time there is no other data, and comments are more than welcome regarding what to do with the extra space

    The project is still very early stage, as I work on it in my spare time at home, but should there be enough interest in this (Admittedly competing) system, I have however committed the code to Github and loaded the WiKi with information about the current designs. Anyone is welcome to discuss this with me! https://github.com/LetDevDev/unet

  2. I believe that people are getting confused because of the name...

     

    The lowercase i in internet is intentional,  internet stands for inter-network, where as Internet (mind the uppercase I) is the name of the real world internet.

     

    What I want does not actually have anything to do with the real Internet. Far from it actually. The core idea is to allow a unified networking solution for programmers. A system that on the API side, sees a networking system, but on the data transmission side can see a network card, or a wireless network card, or a redstone card, or many other different data transmission mediums.

     

    Through the use of microcontrollers and eventually servers (If the ideas I've seen for OC 1.6 go through) I'd like to split apart networks, and have message flow managed between them.

  3. You could set up your router to make your RPi's "garden temperature service" port available over the internet, then you don't have to worry about modifying the blacklist. And you can get your garden temperature from any computer running on any server, not just from one in your LAN. Of course you'll have to live with the danger of people gaining access to highly personal information like the temperature in your garden. :P

     

    As for how to implement it on the RPi side, you'd probably have some kind of Python HTTP server running, which would return the garden temperature on the URL http://weathermaster.example.net/garden/temp or something. Then you could easily query that using a simple HTTP request.

     

    I hadn't thought of that! It doesn't seem all that heavy in theory. But as we all know, theory is not much of anything in the eyes of actually doing something. Still, planning now will always work for us!

     

    I can see that OC is about to be the 'driver' (Bad pun, I'm sorry) that utterly destroys Minecraft's fourth wall, and shall help us with amazing ideas, in-game, in real life, or both even now! I'll see what I can do to help too, although with my full plate, ideas are the most I can say for now.  :D

  4. With some work and putting rules behind it all, we could bridge entine networks! You'd be able to send files, open web-pages, pm, email, and who knows what else? All through a single (Cluster on a large scale) OCnet-Internet bridge! You could link 2, 3, 4. The current addressing class system I'm drafting states that a class one address set (FF00.0000.0000.0000) could hold 256 networks, (minus one for technical reasons, view the mess that is unet documentation) so one could easily a couple HUNDRED minecraft servers with OS in a mesh. Maybe unreasonable, But I like the idea! Thousands of in-game computers, working on several MC servers, talking to eachother as if they were in different parts of the world, even though they are entirely independant worlds!

     

    Again, something of this scale should have input from more then a simple Computer Engineering student like me  :P hence why this is a request.

  5. Tecnically out of the reach of an In-game internet. But then, why should it be?

     

    If we thought of the pi as just a cloud server (A server our minecraft characters don't know where it is, but use anyway), and used an idea I've been playing around with (Cross-server networking without propiatary protocols) We could make entire networks, perhaps even the entire minecraft world reach the pi (We'd have to config an in-game bridge device to control that traffic)

     

    I replied to your other post, so if you'd like to talk about the pi itself, we can do it there where I covered some of the tecnical details behind it. :) However, if you want to talk about adding game-server to real world communication to a minecraft version of TCP/IP, we can do so here!

  6. As we've seen in this topic: http://oc.cil.li/index.php?/topic/778-somebody-used-oc-to-control-a-lamp-in-real-life/ OC can communicate with the outside world! With enough coding it should be easy!

     

    You'd just need an internet card on your in-game machine, and have the pi set up to recieve messages from the in-game computer.

     

    However, we forget the blacklist:

     

    blacklist=[
          "127.0.0.0/8",
          "10.0.0.0/8",
          "192.168.0.0/16",
          "172.16.0.0/12"
        ]
     
    This means that you can't have the pi on the same local network unless you changed the blacklist to allow OC to use the local network (Be careful with this)
     
    Besides that though? Completely possible!
  7. Description:


      Networking in OC has long been the realm of LAN's. I think it's about time to change that, and would like to perhaps start an internetwork task force, to design the rules and build a new networking system that could allow programmers to focus on the software. Basically, I feel it's time someone invented the Internet in Minecraft. 


     


    Function:


      A best-effort networking system similar to TCP/IP in the real world. Allowing subnetworks, reducing traffic on every network massively, and giving everyone more freedom to go crazy with OC's networks!


     


    Deadline:


      Whenever, it's a large scale project that will take a long time to complete.


     


    Additional Information:


      We would probably have to work as a group on this project, but even small ideas are welcome! Simply ask me if you have any questions


     


    I look forward to input on this!  :D


  8. If you're still looking for this, I could slap together some code for you. You mentioned IRC, so I assume you would like a peer to peer system with no server managing it?

     

    It'd be good practice, So I'll code it up, and if you'd like a copy to try out, let me know!

  9. This sounds awesome, will definately be watching this! Need something like this for my private server, were building offices and such, and a less block like computer would be amazing!

     

    I'd ask for a Dell Precision T5500, but it's just a big black box with vents on the front and back only, and a 'fancy' grey cover on the front.

  10. Yes, I know that many people have made networking systems, and I know that some of them do routing too. But I want to present a new contender to the table

     

    Unet!

     

    Unet will be an advanced networking system that will be heavily documented, routed using many different methods, and even support many transport mediums such as modems (of course), redstone eventually, linked cards, abstract busses, you think of it, it could probably be added to Unet!

     

    The way I'll achive this us by using routing devices set up in an extended star, as well as emulating the actual API, meaning that Unet will be universal, any number of any type of transmission medium will act the same on the program side. I'm still working on the system as a whole, but anyone interested in either the idea, or even helping me program this is more them welcome to message me or reply.

     

    Currently looking for input on headers, if you wish to have a special header for something you need, Now's your chance!

    Take a look here to review the current state or headers, then Pull Request your adjustment/new header to see the change made/added

    https://github.com/DevonTheNovice/unet/wiki/Headers

     

    I've finally created a github repo for this! find the code here and make fun of me for it at: https://github.com/DevonTheNovice/unet

×
×
  • Create New...

Important Information

By using this site, you agree to our Terms of Use and Privacy Policy.