User Tools

Site Tools


nndocs:sandbox

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revisionPrevious revision
Next revision
Previous revision
nndocs:sandbox [2024/12/26 18:36] – [IQNs] update naptasticnndocs:sandbox [2025/05/04 02:15] (current) – [Networks] make a table. Might be fun. naptastic
Line 11: Line 11:
 | Food | cherry | | Food | cherry |
  
-====IQNs==== +====IQN and NQN==== 
-We do iSCSI Qualified Names by the book, but as simply as possible. A couple of examples:+We do iSCSI and NVMe Qualified Names by the book, but as simply as possible. A couple of examples:
  
     iqn.2014-08.rocks.narf.southpark:duckling     iqn.2014-08.rocks.narf.southpark:duckling
-    iqn.2004-12.com.naptastic.quirk:68+    nqn.2004-12.com.naptastic.quirk:68
  
-  * 'iqn' is always 'iqn+  * 'iqn' for iSCSI or 'nqnfor NVMe-oF 
-  * YYYY-MM is the month in which the **domain** was registered.+  * YYYY-MM is the month in which the domain was registered.
   * the hostname is in backwards DNS order   * the hostname is in backwards DNS order
-  * :initiator is so I can maintain 1:1 relationships between targets and initiators+  * :initiator or :namespace
  
-I haven't been using :initiator and I'm not 100% sure that it's going to do what I expect. The last time I tried having multiple targets on the same physical network portiscsiadm got pretty confusedI'm planning my next experiment, but I want to tear down **all** the iSCSI and try rebuilding it again "correctly":+From the perspective of a hostevery storage bus has a numberBus 0 is the local PCI bus. Bus 1 is for the host acting as an initiator. Higher numbers are for a host acting as a target. Connections go like this:
  
-  * every initiator gets a dedicated target; +  iqn.2004-12.com.naptastic.rocky:01 -> iqn.2014-08.rocks.narf.southpark:68
-  * every initiator/target pair gets a dedicated IB partition; and +
-  * storage IB partitions are IPv6-only.+
  
-(I also want to try this with SRP.) +Since rocky's host number is 68, any other host wishing to share storage with rocky should do so on their own target bus number 68The network is responsible to connect rocky'bus 01 with southpark'bus 68.
- +
-Ideally, /etc/iscsi/initiatorname.iscsi gets the right value as part of system provisioning, and the target only ever has to use the host's correct nameThere's a strong warning about changing IninitatorName in that file; if you're changing it to the correct value (i.e., the value in the target'ACL) then it'fine. +
- +
-====NQNs==== +
-NQNs: nqn.2014-08.rocks.narf.hostname is the whole thing. No :01 or any of that jazz, at least not yet.+
  
 ====Interfaces==== ====Interfaces====
Line 68: Line 61:
       hardware ethernet 00:10:18:f8:2e:14;       hardware ethernet 00:10:18:f8:2e:14;
       hardware ethernet 00:10:18:f8:2e:16;       hardware ethernet 00:10:18:f8:2e:16;
 +
 +====IPv6====
 +IPv6 local unique addresses have four parts:
 +  - 8 bits of fixed prefix (fd)
 +  - 40 bits of pseudorandom prefix
 +  - 16 bits of subnet
 +  - 64 bits of GUID
 +
 +My top 48 bits are going to be fd20:4e41:5020. Subnet bits should match their Infiniband subnet. Host bits come from the hardware address.
  
 ====IP Addresses==== ====IP Addresses====
Line 79: Line 81:
  
 ====Networks==== ====Networks====
 +
 +
 +^ Network ^ IPv4 Range ^ IPv6 Range ^ IB Subnet ^ VLAN ^ VXLAN IP ^ VXLAN ID ^
 +| green | 172.20.0/22 | fd20:4e41:5020:ffff::/64. | ffff | | 225.172.20.64 | 64 |
  
   * 0-3/22: "green": all emo* and eth* devices should get bridged to this network.   * 0-3/22: "green": all emo* and eth* devices should get bridged to this network.
Line 148: Line 154:
  
 =====Big Idea Dumping Ground===== =====Big Idea Dumping Ground=====
 +====SoC on a PCI card====
 +Mostly this is to enable other projects. It needs at least these features:
 +
 +  * reasonable amount of CPU and DRAM
 +  * PCIe 3.0 x1 or better
 +  * Internal ports:
 +    - m.2 slot
 +    - 40-pin with GPIO, I2C, etc...
 +    - LP-DIMM
 +  * External ports:
 +    - HDMI
 +    - gigabit Ethernet
 +    - (2) USB 3.1
 +
 +The card presents itself to its host as one or more devices. It can pass through its USB host adapter, network adapter, and m.2 slot, and act as a GPU. It supports SR-IOV. You can boot off it. With the right hardware support, it should be able to stay awake while the host powers off or reboots.
 +
 ====PCIe networking==== ====PCIe networking====
 These products: These products:
Line 165: Line 187:
  
 Everything except retimer cards needs an API and UI for managing things. Everything except retimer cards needs an API and UI for managing things.
 +
 ====Better Audio Stack==== ====Better Audio Stack====
 Want to: Want to:
Line 176: Line 199:
 ====Better DAW==== ====Better DAW====
 Core concept is a piece of virtual tape that's infinitely long, infinitely wide, and has an infinite number of tape heads that can all be accessed remotely. A recording session is a server you log into, send recorded audio, receive mixed audio, and update a database of what should play when and with what settings. Core concept is a piece of virtual tape that's infinitely long, infinitely wide, and has an infinite number of tape heads that can all be accessed remotely. A recording session is a server you log into, send recorded audio, receive mixed audio, and update a database of what should play when and with what settings.
 +
 +====RDMA to a Commodore 64====
 +The 6502 can't drive the C64's memory anywhere near full-speed, but the ROM port has a DMA pin, so a DMA-capable cartridge can do impossibly cool things. I'd like to find a good demo playback engine that already exists, and adapt it to play back data being streamed in over a network.
  
 ====Better Mixer==== ====Better Mixer====
 FIXME FIXME
nndocs/sandbox.1735238206.txt.gz · Last modified: 2024/12/26 18:36 by naptastic