Google searches have only yielded 5th grade level examples (“the modem talks between your ISP and your home network!”) or articles I would need a degree to understand. Can anyone provide an explanation that’s somewhere in between the two? I understand the fundamentals of how the Internet works, and how LAN works regarding a router and individual devices, but I’m curious to know more about the link between those.

  • Glaborage@alien.topB
    link
    fedilink
    English
    arrow-up
    3
    ·
    1 year ago

    I’ll give it a shot.

    In the past, before the internet existed, homes were connected to the national phone system. The national phone system is a bunch of interconnected electric lines that are designed to transport electricity in the frequencies used for speech / sound.

    When internet became a thing, people needed electric lines to transport data from their internet providers to their home. Instead of building new electric lines, which would be very expensive, tech companies created a technique called “modem”.

    A modem transforms computer data into sound data, which can travel through phone lines. Once the sound data reaches the internet provider, another modem turns it back into computer data.

  • venquessa@alien.topB
    link
    fedilink
    English
    arrow-up
    3
    ·
    1 year ago

    It used to be a lot simpler. The “Modem” received a stream of serial data (UART/RS232 + AT control codes).

    The digital stream needed to be “encoded” and converted to electrical signals which could be sent on a physical wire… most often the PSTN network (Public service telephone network)… aka “the phone line”.

    The audio/analoge technique used to produce the electrical signals was not as you might expect sending “blips” for 1s and silence for 0s. For way out of scope reasons that isn’t efficient. Techniques like PCM or PWM, Pulse code/width modulation. Beyond the scope. However this gets you the “MODulator”, “DEModulator”. Which is you “MoDem”

    Today, these still exist. Most would refer to them as “dial up modems”. Rare. We tend to have “home broadband” technologies today which range from plain old twisted pair phone lines carrying 100s of times more bandwidth than an “analogu phone line”, but over the same wires. We have old “Coax” cable for “Cable TV” carrying high speed internet. We even now have pure optical fibre connections in to the home.

    At this point, really, it can be argued there is no modem. Certainly not in the terminology used to previously describe one. What often gets refered to as the “Modem” is usually an ONT or similar ePon/docsis device controlled by an ISP which “converts” or “bridges” the optical (or other broadband signal) to “Ethernet”. Most, not all then additionally handle the authentication and “PPP” Peer to peer protocol used to transmit your data over this “You-ISP network”. In larger enterprise these components can be broken down into individual (or multitudes of) different boxes. ONT, PPPoE client, Router, Firewall, Switch, Wifi Access point. In most homes they will either be a single box provided by the ISP or 2 boxes with one provided by the “Network operator” and the other by your “Internet retailer.”

  • fasta_guy88@alien.topB
    link
    fedilink
    English
    arrow-up
    2
    ·
    1 year ago

    Take a look at old issues of Byte Magazine where they will explain how to make a cassette tape backup system for your 1975 computer. Basically, you need to turn ones and zeros into tones that can be recorded on cassette tape, and you need to do it in a way that strings of 111111’s and 00000’s get the right count of '1’s and '0’s. There are a bunch of different ways of mapping tone changes to '1’s and '0’s, (frequency shift keying, phase shift keying, etc) and it’s pretty amazing all the ways to pack bits into tones (how many tones do you want to distinguish - 2? 4? more?).

    You could also look up how the old 300 baud (essentially bits per second) modems encoded bits over telephone lines that only provided 3Khz of bandwidth, and how more sophisticated encodings allowed 1200 baud, 2400 baud, and ultimately 56K baud.

  • LRS_David@alien.topB
    link
    fedilink
    English
    arrow-up
    2
    ·
    1 year ago

    As others have noted a modem is a modulator / demodulator.

    Most modems are designed into other things. Like cable coax modem/router/switch/wi-fi access point. Or other things. Or in a cell phone it converts bits internal to the phone into radio signals or back the other way. Many things people call a modem is really a more complicated box with a modem built into it.

    In the basic definition of the term it is bits <-> analog wave forms. Back in the day it was land line modems and the wave forms could be heard by most people if they listened “in”. Actual FAX machines (not email pretending to be a FAX) still do this. Connected to the “bits” side of a modem is usually a circuit that takes those bits and organizes them in agreement with the other end of the connection. Mostly these days Ethernet.

    Most Fiber setups do NOT have a modem as they have networking bits already in the light in the fiber. They do “media conversion” between fiber and copper.

    And if you want to dig deeper look into how DSP (Digital Signal Processing) works, Fourier Transforms, and how Wi-Fi radios encode things, and so on.

  • averyrisu@alien.top
    cake
    B
    link
    fedilink
    English
    arrow-up
    1
    ·
    1 year ago

    So things are sent through the wire, that needs to be demodulated coming from the ISP, and modulated to go back to the ISP> Hence the title, module and demodulate. It takes the digital information, transforms it into an analog format (most often through coax cable where I live.

  • Circuit_Guy@alien.topB
    link
    fedilink
    English
    arrow-up
    1
    ·
    1 year ago

    You’ll get a better answer on something like r/embedded. I.e. seek out the people who work on them.

    Here’s the less-then-degree answer: Think about a telephone dial tone or key press sound. That’s sending a digital command over audio. You’re sending a tone that the other side can pick up and turn back into a number. You can step up higher and higher in frequency to send more information. This was originally what they called broadband, when it got high enough in frequency to go outside the audible range. There’s other techniques besides just tones, like phase differences between two signals (think how headsets can mimic directional sound). You could use this to encode much more information than just frequency alone. As modems get “faster” we’re moving to more complicated algorithms to send data.

  • TheRiZZoTTo@alien.topB
    link
    fedilink
    English
    arrow-up
    1
    ·
    1 year ago

    The straight answer is a modem bridges and translates between layers in the OSI model, typically layers 1&2 (physical and data) on one side (your coax for cable or fiber) and layers 3&4 (IP and TCP, the typical protocols for home networking) on the other side. We used to call modems the devices that would do that translation over a phone line, and we would call the devices that connected two different network types bridges (like coax or microwaves to Ethernet or token ring), but now we call what are really bridges modems for home networking deployments.

    To get between ELI5 and PhD, dig into some good telecom textbooks and focus on the fundamentals like the OSI model, time-division multiplexing (TDM), frequency-division multiplexing (FDM), DOCSIS, how to send binary data over radio, etc.

    • cholz@alien.topB
      link
      fedilink
      English
      arrow-up
      2
      ·
      1 year ago

      But all these layers exist on both sides of a modem. Really the modem is translating between a type of physical/data layer on one side (e.g. twisted pair ethernet) to a different physical/data layer on the other side (e.g. docsis)

      • seismicpdx@alien.topB
        link
        fedilink
        English
        arrow-up
        1
        ·
        1 year ago

        That’s why technically, it’s a “bridge”. When DOCSIS was deployed for the consumer market, marketing continued to sell the electronics box at the point of demarcation (DEMARC) as a “modem”.

    • melanarchy@alien.topB
      link
      fedilink
      English
      arrow-up
      1
      ·
      1 year ago

      OSI Layers are bullshit leftovers from the past, they’re no longer applicable in modern computing.

    • peroyvindh@alien.topB
      link
      fedilink
      English
      arrow-up
      1
      ·
      1 year ago

      Nice concise explanation. Would like to add that a modem originally were useful to be able to modulate and demodulate analog signals to and from digital signals due to limitations on most phone lines to allow for higher speeds than was practical if trying to transmit pure digital signals on them due to bad noise suppression.

  • Busy_Reporter4017@alien.topB
    link
    fedilink
    English
    arrow-up
    1
    ·
    1 year ago

    The modem device bridges between the local network and the WAN. The physical medium of the WAN is designed to cover longer distances.

    Modems used to use audio signaling to send data over phone lines. Nowadays they generally use higher frequencies such as radio signals or optical to send data over radio link, DSL, cable, or fiber media.

    The modem device encodes and error checks/corrects, converts and transmits the data – between the different LAN-WAN protocols / physical layers.

    MoDem stands for modulator-demodulator. That implies an audio or RF “baseband” signal being “modulated” (the carrier frequency shifted) to encode the data onto the physical layer.

    However, modern modems use DAC/ADC (analog-digital/digital-analog converter) modules to transmit/receive the analog signals and directly convert to/from digital (logic level) signals. They don’t need the intermediate step of generating a baseband carrier frequency and then modulating it. Hence the modern modem may actually be an SDR (software-defined radio). SDR can cover a huge frequency range and any encoding/modulation – defined only by the software!

    In fact, some newer radio transceivers use SDR for its flexibility. For example, Flex / Anan radio transceivers. Some designers have repurposed commodity modem chips to create less expensive SDR transceivers. There are now Ham Radio transceivers based on this concept.

    • LRS_David@alien.topB
      link
      fedilink
      English
      arrow-up
      2
      ·
      1 year ago

      A modem device bridges between the local area network (LAN) and the wide area network (WAN).

      Nope. A modem can be a part of a box doing this but not always.

  • BlueKnight87125@alien.topB
    link
    fedilink
    English
    arrow-up
    1
    ·
    1 year ago

    Let’s use a non-techy example. I speak English (your home network for this analogy), and I’m trying to converse with a person who speaks Chinese (the wider internet). Neither of us understands the other’s language, leading me to find someone who speaks both to interpret (the modem). The interpreter listens to what I have to say and then repeats it to the other party in Chinese. The Chinese person gives a response, which the interpreter repeats back to me in English.

  • One_Sense_5007@alien.topB
    link
    fedilink
    English
    arrow-up
    1
    ·
    1 year ago

    It just changes the way the data looks so it can travel on a different cable. Modulates/demodulates the data/signal. The ISP doesn’t use Ethernet to transmit the data so to transmit the same data it needs to change they way it look. Kind of like taking normal book text and converting it into braille so a blind person can read it.

  • vhdl23@alien.topB
    link
    fedilink
    English
    arrow-up
    1
    ·
    1 year ago

    How deep are you willing to go.

    I’m a computer engineer, I design and develop embedded systems like modems, TCU, ECU and many others.

    If you want to understand how a modem works, truly understand everything. You need to first understand some basic physics primarily electromagnetism and the property of waves.

    From there you can jump to a higher abstracted level such as amplitude modulation, frequency modulation and phase modulation. From this you can try to read up on Quadrature amplitude modulation.

    You can also use this to understand demodulation.

    Then jump back to the lower level and study up signal theory and how these things work.

    Honestly the level of information to fully understand how a device like a modem is huge.

    If you love this stuff and you’re still young I would encourage you to become a computer engineer with a focus in asic. It’s not easy but the stuff you work on is rewarding.

  • gust334@alien.topB
    link
    fedilink
    English
    arrow-up
    1
    ·
    1 year ago

    The term “modem” is a contraction of “modulator-demodulator”.

    If one wants to send/transmit a binary digit (zero or one) through a length of wire, one of the easiest ways to do that is to make the wire at some predetermined voltage for the zero symbol, and some other predetermined voltage for the one symbol, with respect to ground. This is known as modulation, more specifically voltage modulation. The voltages are arbitrary.

    (Other forms of modulation include frequency modulation and phase modulation, which would work over wired or wireless/radio communication. The principles of modulation don’t care what kind of modulation it is, so this explainer will stick with wired voltage modulation even where practice would use something else.)

    For an ideal wire, the voltage signal at the far end will be the same as the near end. A receiver can detect the voltage signal and check if it matches the voltage for the zero symbol, or matches voltage for the one symbol. Detecting and checking is known as demodulation. Symbols that go in one end can be detected at the far end.

    Unfortunately, we can’t buy ideal wires; nobody has them in stock.

    For our wires, physics limitations (such as but not limited to wire resistance) come into play and the voltage at the far end will be different than what we put in at the near end. However, a receiver can detect the voltage signal and decide if it is closer to the voltage for zero, or closer to the voltage for one, and use that to determine the symbol received. However, eventually the wire gets so long and resistance so high that we can’t tell the difference between the received voltage for zero/one.

    One solution is to break the wire into two. We then insert an ideal amplifier at the half-way point, where we still have enough voltage signal to detect zero/one, and we make it “louder”. It might appear obvious that we can continue to divide the wire into segments with an ideal amplifier on each one to get any length of transmission.

    Unfortunately, we can’t buy ideal amplifiers; nobody has them in stock.

    For our amplifiers, each one makes the voltage signal “louder”, but also adds unpredictable noise. And the next one down the line both amplifies the desired voltage signal, but also the unpredictable noise, making both “louder”, before adding yet more unpredictable noise. So it is entirely possible that by the time we get to the far end, we have so much noise that the received voltage signal can no longer be reliably detected to be a zero/one symbol.

    We can fix that by replacing amplifiers with custom repeaters. These custom repeaters know what voltage should be there for a zero/one symbol. Rather than simply making the incoming signal “louder”, they detect the incoming symbol, and then drive the predetermined voltage signal for that symbol, along with the unavoidable noise. But in this case, the noise received from the previous length has been eliminated.

    So now we can send a zero symbol or one symbol reliably over a cable of any length, but what happens when we want to send more than one? We have to change the voltage for each new symbol.

    There is a new physics issue here. No matter how rapidly we raise or lower the voltage signal on the near end of a wire segment, the far end of the wire segment will more slowly transition (ramp) from one voltage to the other. This causes issues for the repeaters, because during that transition, there is a time where the input is more or less in the middle, and it isn’t clear whether they are detecting a zero/one symbol. And noise from the repeater makes the symbol further ambiguous.

    If we change the voltage once per minute, we’re fine because the receiver can simply check a couple times per minute and average the readings to safely determine a single zero/one symbol. But that sending frequency would require 100 years to send a single picture that would fill today’s screens.

    So what happens if we change the voltage faster? Eventually we reach a physics limit what the wires can carry or what the repeaters can repeat, and the zero/one symbols start to blend into each other (a form of intersymbol interference.) This limiting frequency is the fastest we can change the symbols.

    Some clever folks realized that instead of a two predefined voltages for the two symbols of zero/one, they could choose four predefined voltages for the four symbols of 00/01/10/11. This requires that each receiver (including the repeaters) is now more complicated and expensive because it must detect one of four voltages. We still have the practically the same limit for the fastest frequency to change the symbols. But at that same frequency, we are now sending twice as much data.

    It is clear this can be extended to larger collections (constellations) of symbols, following the rules of 2^N. Three bits would have eight symbols, six bits would be sixty-four symbols. Each time we increase the number of bits transmitted per symbol, we get an increase in the data rate.

    It would seem that data rate should be unlimited, except that our physics limitations make it really hard to reliably detect which symbol was received for high-order constellations. Our network of wire lengths and repeaters was chosen/tuned to work for only two symbols. When we try to put higher rate constellations of symbols into our network, we also have to replace all of our custom repeaters! We also have to shorten the wire lengths of each segment and increase the number of repeaters for the same distance.

    It is also really difficult and expensive to design and build receivers that can detect higher rate constellations of symbols. [As of this writing Nov 2023, the highest order constellations of symbols planned are 12-bit (4096 symbols) but I’m not aware of any systems where that is widely deployed.]

    Note that in practice, repeaters are not often used because, for the reasons listed above, they have to be replaced anytime you change the number of symbols used. So instead of repeaters, most networks use amplifiers with all of their difficulties.

    A bit outside the scope of “How the f*ck does a modem work?” and moving more into the degree-required area, there is one more improvement that is notable. Some more clever folks realized that by slightly limiting the number of symbols that are sent, they can improve the reliability of the connection even if the channel of wires/amplifiers has a lot of noise and degradation.

    To explain what they did, imagine a system of 6-bit symbols. We switch gears from voltage modulation to frequency modulation, so each symbol corresponds to a specific predetermined frequency. For explanation purposes, we choose those frequencies arbitrarily to be the highest 64 keys of those on a piano keyboard. If we play those frequencies into the channel and have someone with perfect pitch listening on the far end, we hope they are able to determine which of those 64 notes is being struck each time.

    However, noise in the channel means that sometimes it will be ambiguous which note was used; e.g. it kind of sounds like middle F or maybe middle F-sharp/G-flat. If we prearrange that we will only play in the key of C-major, then some of the notes will not be used, but that makes it easier for the listener with perfect pitch (receiver) to guess which note it was. In the example above, middle F#/Gb is not part of the C-major scale, so the received note must be middle F. Resolving such an ambiguity of a received symbol based on probability following predetermined rules is named the Viterbi algorithm, named after one of the inventors.