You're probably familiar with the Internet Protocol. After all, it's the "IP" in IPv4 and IPv6. The set of rules that routes data across networks so that it gets to the correct destination. The protocol says how to divide the data into smaller packets for transmission, and how to address them for transport, just like sending a physical packet through the mail. It's most commonly thought of in relation to the Internet and transmitting data over Ethernet or Wi-Fi, but there are many other things it gets used for.
IP says nothing about the data inside the packet, only about the headers used to route it to its eventual destination.
The fun thing about IP is that it can be used with a wide range of data packets, as it's designed for transmitting data between devices across different networks. However, it doesn't guarantee packet delivery and can be combined with another protocol, like TCP, to ensure this. It can transport many data types and transmit over many different physical mediums, but here are some of my favorites.
4 gadgets I use that support Power over Ethernet
PoE devices are perfect for reducing cable clutter in my home lab
6 Audio over IP (AoIP)
Whether for production or livestreaming, audio over IP is everywhere
Audio signals used to be transmitted via point-to-point analog or digital cables, and that's still true enough, but AoIP is gaining ground for its versatility. AoIP enables high-quality audio streams to be transferred with minimal latency, whether for broadcasting, streaming, or sending audio around a production studio or elsewhere. And using IP means it can easily integrate with other network-connected systems, often over the same cabling.
Generally, the audio data gets compressed with codecs like AAC, MP3, and Opus to reduce the amount of data sent. Then, one of several protocols is used with IP to manage the transmission, including RTP for streaming audio, SIP for signaling and controlling, and more specialized protocols like Dante AV (which can also handle video feeds), AES67, and Ravenna. AoIP uses jitter buffers to reduce the impact of timing variations in packet arrival and various synchronization methods like the Precision Time Protocol, which provides sub-microsecond accuracy.
5 reasons an audio interface is the best upgrade I made to my PC
I upgraded my PC's audio with an audio interface, and it's the best upgrade I could have made.
5 IP over InfiniBand
High-performance computing clusters in the data center need fast connectivity, but the ease of IP addressing
InfiniBand is a networking standard used in high-performance computing. It is designed for low-latency, high-speed interconnectivity at speeds of 400Gbps or higher. It's fast because it can make direct connections between data and compute units, sending the normal MTU many times at once. It can scale to incredibly large systems, connecting tens of thousands of nodes simultaneously, but it doesn't use IP by default. Technically, this is IP over InfiniBand, but since it uses IP for the routing, it stays on the list.
That's not to say they can't work together, though. IPoIB outlines how standard IP network traffic can be transmitted over InfiniBand hardware. InfiniBand emulates an IP network layer on top of the high-performance transport when used like this. This is handy when you're using systems and standard networking tools that need IP, but you want to leverage the bandwidth and latency benefits of InfiniBand, and the advanced features like direct memory access that the transport protocol allows for.
I've got 10GbE networking and I'm here to say you probably don't need it
Discover the surprising reality of 10GbE networking and who actually benefits from it
4 Thread
This network transport layer uses IPv6 for addressing, but is distinct from Wi-Fi
The smart home is a fragmented mess at the best of times, and I'm afraid the rising popularity of Matter devices isn't going to change that any time soon. But Matter does a couple of things differently in terms of connecting IoT devices, like using Wi-Fi or Ethernet for high-bandwidth devices, and the more interesting Thread, for low-power mesh devices.
Thread operates on the IP layer for addressing via IPv6, while building on IEEE 802.15.4, the same protocol that Zigbee also builds upon. It's not the same thing, though, with Thread having cloud access and AES encryption by default, and the need for a Thread Border Router to connect the Thread network to any other IP-based network for Internet or LAN connectivity.
Matter's broken promises: After spending time with Matter, I'm starting to doubt this is the future of smart homes
My first experience of Matter has sent me down a rabbit hole.
3 NVMe-oF over IP
Connect your speedy storage SSDs to the network
NVMe is a communication protocol that was designed for flash-based storage devices. It's most commonly found using the local PCIe bus for connectivity, but the protocol also allows for NVMe to go over Fabrics, which is just another name for networking transport protocols like Fiber, Ethernet, InfiniBand, and TCP. This extension of the NVMe protocol means the SSD's memory banks can be addressed by other computers on the network, and TCP/IP is the most common way for doing so over IP networks.
It gets a little more complicated if you use non-IP-based fabrics, but for TCP/IP you can get almost the same speeds as using a local PCIe link, but from anywhere on the network. You could easily saturate your home network using it, or use it in your home lab as an excuse to upgrade your networking equipment, as you could easily reach 100GB/s transfer speeds.
4 ways to make use of NVME drives in your homelab
Make use of old drives and learn something about filesystems along the way
2 iSCSI
Use block-level access to your storage devices over the network
Internet Small Computer System Interface, or iSCSI, is a storage protocol that lets you directly address blocks on storage devices over the network. It's perfect for databases or virtualization tasks because it presents storage at the block level instead of file level, as if the drive was locally installed. It can use any IP-based network to do so, even the Internet, and is very common in enterprise environments for creating Storage Area Networks (SANs) for extensive storage with redundancy. It's fast enough to game off, and is a good choice for creative professionals that need to transfer large amounts of data over their network, or work with large video files.
An iSCSI share over my LAN means I don't have to upgrade my PC's storage anytime soon
Despite its extensive use in servers, iSCSI is an underrated storage protocol in the consumer market
1 IP over Avian Carriers (IPoAC)
RFC 1149 brings some humor to the world of protocols
IPoAC or RFC 1149 is a humor-filled poke at the usual seriousness of the Internet Engineering Task Force and the Internet Society, and describes a way to transmit datagrams with pigeons being the transport layer. If you clicked through and noticed the date the RFC was posted, happy April Fools'! In what's become a long-standing tradition (nearly as long as the Internet has been a thing), the Internet RFC Editor has posted at least one RFC on April Fools' since 1989.
In 2001, the Bergen Linux User Group actually implemented IPoAC for the first time, with a flock of carrier pigeons that sent ping packets to one location and then back again. The whole thing took nearly two hours for the ping and return packet, which is pretty poor, but it's good to know that I'll be able to send memes out even if the electronic Internet goes down.
Who cares about IPv4 or IPv6 when CDNs run the internet
The surprising reason why IPv6 adoption is no longer a top priority for the Internet
These are only a few of the things that can be addressed and routed using the Internet Protocol
The OSI model for computer networking is designed to be flexible, and the Internet Protocol is only one of many options for the network layer to route data packets to their destination in different ways. Ethernet is only one of the many L2 technologies that IP can run over, and I'm sure there will be more in the future as we invent faster ways to transmit data.
