LED Backhaul Project Engineer Blog

Answers to FAQ (Part 2)

What is communicated in LED Backhaul optical communication?

Last Update: November 24th, 2021


Introduction

Our product, LED Backhaul (hereinafter referred to as LEDBH), is an optical wireless communication, but then, "What is communicated by optical wireless communication? What can it communicate? The answer is simple: Ethernet. The answer is simple: "Ethernet. In simpler terms, it can be said that it is a device that makes LAN cables wireless, and in fact, that is how we sometimes refer to it in our sales explanations. However, since it is an unfamiliar optical wireless communication, many people seem to think, "Isn't it communicating in a special format? So, in this article, I would like to talk about "LED". So, in this article, I will answer the question, "What is LEDBH communicating? and explain the mechanism of LEDBH.

What is Ethernet?

If you are familiar with communication protocols, you will understand that "LEDBH uses Ethernet layer for communication. However, if you've heard of Ethernet but don't know what it actually is, I'd like to explain a little about it.

fig.1
Figure 1: LAN cable photo (Cat.7)

When you think of Ethernet, you probably think of a "LAN cable" like the one in the picture that you plug into your computer. In fact, LAN cables are also called Ethernet cables. In addition to LAN cables, coaxial cables and optical fibers can also be used for Ethernet communication. Coaxial cables are almost extinct and are rarely seen, but optical fiber Ethernet cables are used in many places. For example, in the case of LAN wiring in a company, LAN cables (or Wi-Fi) are probably used for the visible end, but for the backbone part of the wiring, such as the longitudinal wiring that straddles the floors of a building, optical fiber Ethernet is often used, which is superior to LAN cables in terms of communication speed, distance, and stability. I digress a little. I digressed for a moment, but what I wanted to say here is that Ethernet is not a standard for the cable itself, but a standard for the communication method.

There is one more thing that is often misunderstood. However, Ethernet is not a standard for communication over IP. It is true that most of the data that ordinary people exchange via Ethernet is IP communication, that is, communication using the Internet Protocol. Each device is assigned an "address" called an IP address and communicates by specifying that address. This blog you are reading right now has a URL and a corresponding IP address, and the browser uses that IP address to deliver the data to the destination. However, IP communication is a higher layer of communication than Ethernet. Ethernet carries IP packets that contain IP addresses, but Ethernet itself cannot see the contents of the packets, i.e., the IP addresses. Every LAN port (e.g., Ethernet port) has a MAC address, which is six bytes long and is assigned a number that makes it unique for all devices. A MAC address is as long as 6 bytes and is assigned a number that makes it unique to all devices. A MAC address is as long as six bytes and is assigned a number that makes it unique to all devices, like a serial number. In Ethernet, you can specify the unique MAC address as the destination to deliver the packet to the device you want to communicate with. The MAC address and the IP address are linked separately by a protocol called ARP (a.k.a. ARP), which creates a comparison table of MAC addresses and IP addresses so that packets can be sent to this MAC address if they are to be sent to this IP address. If you want to send a packet to this IP address, send it to this MAC address.

LEDBH and IP address

Ethernet is often used to send IP communication, but it can also send non-IP data. IP communication is a type of Ethernet content (payload), which is a protocol that does not require an IP address as a communication mechanism, but uses a MAC address to specify the destination and send data. In other words, you can say that LEDBH is a device that communicates by MAC address regardless of IP address. One of the most frequently asked questions is, "What should I do with the IP address of each device when I use LEDBH? The answer to this question is, "It doesn't matter what the IP address is, you can do whatever you want. The answer to this question is, "It doesn't matter what IP address you use, you can do whatever you want", but this comes with the condition that "you don't need to configure LEDBH".

LEDBH has a variety of settings that can be changed. And in order to change the settings, you need to access LEDBH and open the web configuration screen. In order to open the configuration screen, you need to specify the IP address (http://192.168.0.xxx by default). So, if you only want to communicate with LDEBH, the IP address does not matter at all, but if you want to change the settings, you need to set the subnet to an IP address that can access LEDBH. Of course, you can also change the IP address of the LEDBH itself. The feeling here is the same as the setting screen of a switching hub. In the case of LEDBHs, the IP address is also needed to obtain the SNR (signal to noise ratio) needed for optical axis alignment, so it is necessary to set the IP address appropriately at the time of installation to create an environment where the LEDBH can be accessed. Therefore, it is better to set up an IP address appropriately at the time of installation and create an environment that allows access to the LEDBH. LEDBH also supports DHCP client, so you can dynamically assign an IP address to it.

What if I don't know the IP address?

Well, here's a question: you need an IP address to configure your LEDBH. But if you don't know the IP address, you can't even get to the configuration screen. Unfortunately, the LEDBH does not have a control display either. So, how can I access the LEDBH without knowing its IP address (or MAC address, of course)? Actually, you can find out the IP address by using an application called "SNR Viewer," which is a tool that displays the SNR attached to the LEDBH. This is possible even if the LEDBH has an IP address that is completely unrelated to the PC running the SNR Viewer.

fig.2
Figure 2: SNR Viewer screen (the red dotted frame is the obtained IP address)

For example, the hubs of NETGEAR, which we often use, have a special application that allows you to know the IP address of the hanging hub. In fact, as I am not a network specialist, I did not know how these applications know the IP address until I was involved in the development of LEDBH. I thought they were just guessing IP addresses. It's not easy to find this information on the Internet, but since this is a good opportunity, I'd like to explain how our LEDBH gets its IP address from an unknown IP address. Actually, it's pretty simple.

  1. A PC (application) sends packets to a special MAC address. This MAC address is not assigned to any real device, but it is a MAC address that all LEDBHs know.

  2. All LEDBH devices that receive a packet destined to this special MAC address will always return a reply packet to the destination of the packet.

  3. The PC receives the reply packet and sends a request packet to the destination (i.e., the LEDBH) to send status information such as IP address.

  4. The LEDBH that receives the request packet sends status information to the destination of the packet.

This is how it works. The key is the "special MAC address". The key is the "special MAC address." On Ethernet, packets with MAC addresses whose destination device is unknown are scattered to various places. The LEDBH receives this and always replies. Once this is done, the PC (application) will know the MAC address of the LEDBH, so all it needs to do is to communicate directly with it.

However, there are rare hubs that do not send out MAC addresses that they do not understand, so this mechanism cannot be used if the hub is connected across such hubs. Therefore, if you want to know the IP address of the LEDBH

  • Connect your PC and LEDBH directly with a LAN cable.
  • If you want to know the IP address of the LEDBH, connect the PC and the LEDBH directly with a LAN cable, or connect them with a switch that is known to pass this kind of packet (NETGEAR switches are okay).

If you want to connect multiple LEDBHs in a network, you can either connect them directly with a LAN cable or use a switch (NETGEAR is fine) that is known to pass this kind of packet. Also, if you have multiple LEDBHs connected to the network, you will get responses from multiple devices. If you have more than one LEDBH connected to the network, you will get responses from multiple devices. It is also important to keep the PC and the LEDBH close to each other on the network, since the use of Ethernet naturally does not allow you to go beyond the "router (device that straddles the subnet).

Incidentally, in order to create such packets without an IP address and with a MAC address specified from the application side, you have to create your own MAC header. In order to send and receive "low-level packets" that specify everything from scratch, including the header, it was common to use an API called Raw Socket in the OS. However, due to the high number of malicious activities (e.g., sending fake address packets) using this function, many of the functions have been removed from the OS Raw Socket since Windows XP SP2 (although they still seem to be available on Linux systems). Therefore, in the aforementioned "SNR Viewer", I have created my own Raw Socket API to create low-level packets.

Ethernet, but...

Ethernet is designed for errors due to collisions, but it is not designed for situations where the noise environment in the communication section is so high that many errors occur. Therefore, Ethernet can detect errors, but not correct them. On the other hand, LEDBH, even though it is an optical wireless system, is still a wireless system. Errors are bound to occur in the communication path. Therefore, LEDBH is equipped with an error correction function and retransmission function (commonly known as H-ARQ) in the MAC/PHY layer of the optical wireless section. Therefore, in normal use, errors in the wireless section will not be visible in the Ethernet layer. However, if the communication quality of the wireless section is too high, the error retransmission in the optical wireless section may not be completed in time and the error may appear in the upper layers including Ethernet.

Although I said that LEDBH does not look at the Ethernet payload, or the contents of IP packets at all, there is actually a case where it refers to the IP header. LEDBH supports some of the functions of IP presence and DSCP, and it will look at some of the IP header. However, if you want to set up QoS, you will probably do it on the hub (L2 switch) in the first stage, not on the LEDBH section, which only does one-to-one communication, so most people won't use this function, and you won't have to change the IP address setting by this function. It is not necessary to change the IP address settings.

Summary

  • The answer to the question "What is being communicated by optical wireless communication? The answer is "Ethernet".
  • The answer to the question "What am I communicating with in optical wireless communication?
  • However, changing LEDBH device settings and obtaining SNR for optical axis alignment are done via IP, so if these are necessary, appropriate IP address settings are required.
  • The SNR Viewer, which can find the IP address of the LEDBH device no matter what IP is set, uses Raw Socket to communicate, so it cannot be used across routers or some hubs.
  • Since LEDBH is "wireless", errors in the wireless section are inevitable, but since error correction and retransmission are performed in the optical wireless communication layer, errors will not occur at the Ethernet level in normal use.