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


  • Content Count

  • Joined

  • Last visited

  • Days Won


Everything posted by Magik6k

  1. OETF #10 - OHCP - simple DHCP/BOOTP like protocol for host auto configuration. 1. Protocol This is specification for a binary data frame(a Lua string), sent over OETF #7 protocol with protocol number 0xCF. BYTE 0 | BYTE 1 | DATA | BROADCAST --------------------|--------------------------|----------------------------|----------- 0x00 - ADDR REQUEST | NOT SET | NOT SET | ALLOWED 0x01 - CLIENT RESP | 0x00 IPv4 address assign | IPv4+subnet byte (4b + 1b) | NO 0x01 - CLIENT RESP | 0x02 IPv4 gateway | Gateway IPv4 (4b) | NO 2. Protocol Flow When a new client is starting up, it SHOULD broadcast `ADDR REQUEST` once. In case of no response it may retry after at least 15 seconds. If server has free addresses in address pools it should respond with `CLIENT RESP` packets, setting the client up.
  2. 1. Purpose OETF #9 - OC Host Discovery Protocol is a host discovery protocol for local OC networks specified by OETF #7. 2.Protocol This is specification for a binary data frame(a Lua string), sent over OETF #7 protocol with protocol number 0x0C. All frames are allowed to be sent as a broadcast or as a direct message. Prefix byte | Action | Payload ------------|-------------------------------------|----------- 0x01 | Peer IPv4 Advertisement | 4 byte IPv4 0x02 | IPv4 Discovery request | Optional 4 byte IPv4 [reserved] | | 0x08 | Peer IPv6 Advertisement | 16 byte IPv6 0x09 | IPv6 Discovery request | Optional 16 byte IPv6 When a peer in a network receives a 'Discovery request', it MUST respond with a 'Peer Advertisement' massages with all addresses set on a given interface. When a peer is assigned an address is SHOULD broadcast a 'Peer Advertisement' message. Some implementations may choose to broadcast those is some set periods, if they choose to do so, it's recommended to set the interval to at least 60 seconds to not stress the network. Responses to 'Discovery request' frames SHOULD NOT be a broadcast messages. When there is no payload in 'Discovery request' frame, all addresses set on a given interface should be advertised. Implementations MAY choose to not implement filtering in 'Discovery request' frames, falling back to the no-payload behavior.
  3. Port 1 is just a default that can be changed. Ports in this network stack are used as VLANs, If in your infrastructure something else is using that port, you are free to change it, and it's not that hard(that is, implementations shouldn't make it hard).
  4. Also, it would be fancy if one could use big battery as power buffer, as internal 10MRF is way too small for 1MRF/t+ reactor.
  5. You can use braille Unicode characters to give the bars more resolution as with OC font they are exactly 1/4 vert and 1/2 horiz of a full character block(the characters are "⣀", "⣤", "⣶", "⣿", "⡇")
  6. The following document is still a DRAFT and a subject to change, though protocol and assigned numbers should not change. 1. Purpose ON2 - OCNet L2 protocol - is a very simple standard is aimed at advanced network stacks. It provides protocol tagging and optional vlan separation for devices that support it. 2. Protocol ON2 utilizes the fact that OpenComputers network message can have multiple parameters. When a message(data frame) is sent using ON2 layer, the implementation sets first data parameter to protocol number and passes the data via second data argument. Port number(if supported by device) can be used as VLAN tag allowing network separation. Default port number(vlan) is 1 Here is an example modem call for sending data frame with protocol 0x46 (IP frame): component.invoke(modem, "send", dest, vlan, 0x46, ip_data) 3. Implementation recommendations Each network stack implementation should default to listening and sending on port 1. If packet of with unknown protocol number is received is should be silently dropped. Implementations should pass local/remote address and interface information(modem ID, vlan or interface object) to higher layers. 4. Protocol numbers: Protocols are identified by numbers assigned in table below. |-------------------------------------------------------------| | PROTOCOL NUMBER | PROTOCOL NAME | DEFINING STANDARD | |-----------------X--------------------X----------------------| | 0x0C | OC HOST DISCOVERY | OETF #9 | |-----------------X--------------------X----------------------| | 0x46 | IPv4 or IPv6 Frame | RFC791 and RFC2460 | |-----------------X--------------------X----------------------| | 0xCF | OHCP CONFIG PROTO | OETF #10 | |-----------------X--------------------X----------------------| | 0x1000 | MultICE | ??? | |-----------------X--------------------X----------------------| | Above 0xFFFF | User defined | N/A | |-------------------------------------------------------------| You can apply for assigning protocol number by a post in this thread.
  7. Super nice, but: * Scroll in license in installer is crashing * You should really consider using some package manager like OPPM/MPT for that * I have a strong feeling that this was ported from CC, structure of the files sort of doesn't fit OpenOS, have a look at this http://www.thebuzzmedia.com/wp-content/uploads/2007/09/linux_file_structure.jpg * With package manager packages wouldn't create mess in root directory * you REALLY, REALLY should use something like /home/[user]/Desktop/SomeApp.app, or at least /root/Desktop/some.app for app launchers, having all things inside the root (/) directory is not nice at all. Other loose suggestion for you is that you could adapt plan9k kernel(pipes package on mpt), to get multitasking and more security due to sandboxing. Learning how to use it may be a bit hard, but if you'd have a go at it you can catch me on IRC. Your entrypoint would be /bin/init.lua and you wouldn't have to modify Full OS to plug your functionality into something above BIOS level More on mpt: http://oc.cil.li/index.php?/topic/92-mpt-minecraft-packaging-toolbeta/ The whole system looks really nice. In case it'd stay on top of OpenOS, it only needs some work here-and-there, like translations of things, small bugfixes, and it would be even worth seeing it on loot disk. And YAY, first(?) proper gui based shell/os in OC world.
  • Create New...

Important Information

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