Wednesday, April 9, 2025

why not tcping it ?

 


Pouriya Jamshidi’s GitHub profile https://github.com/pouriyajamshidi showcases a variety of open-source projects, primarily focused on networking, security, and system diagnostics. As a hobbyist programmer based in Belgium, Jamshidi has developed 27 repositories, with several standout tools that cater to developers, network administrators, and security enthusiasts. His work emphasizes practical utilities written in languages like Go, Rust, Nim, and Python, reflecting a strong interest in creating efficient, cross-platform solutions for real-world problems. The projects range from network monitoring tools to security-focused applications, demonstrating both technical skill and a commitment to community-driven development.

One of Jamshidi’s most notable projects is tcping, a TCP port-pinging utility inspired by the traditional Linux ping command, written in Go. With over 796 stars and 70 forks, it’s a popular tool for testing TCP connectivity, offering features like customizable timeouts, interval settings, and output formats (CSV, JSON, SQLite). It supports multiple platforms, including Linux, Windows, and macOS, with installation options via Homebrew, Docker, or direct downloads from GitHub releases. The project’s active development, driven by community contributions, includes recent updates like ARM64 support and enhanced DNS resolution, making it versatile for diverse environments, including Android (with some noted limitations).

Another significant contribution is qwatcher, a queue-monitoring tool written in Nim, designed to diagnose TCP connection issues on Linux systems by tracking input and output buffers. It provides flexible logging options (SQLite database or text files) and real-time console output, helping users identify buffer-related connectivity problems. Other projects like oxipot, a Rust-based network honeypot, and nginwho, a Nim-based Nginx log parser with Cloudflare IP resolution, further highlight Jamshidi’s focus on security and network analysis. These tools are lightweight, practical, and aimed at enhancing system visibility and protection.

Jamshidi’s repositories also include specialized utilities like flat, which measures UDP and TCP latency using eBPF and Go, and fwmonitor, a Python script for analyzing iptables and UFW logs. His work is well-documented, often accompanied by clear installation instructions and usage examples, encouraging collaboration through issues and pull requests. With 37 followers and an active presence on X (@pouriyajamshidi), 

Jamshidi fosters a community around his tools, which are licensed under permissive terms like MIT or GPL, ensuring accessibility. Overall, his GitHub profile represents a valuable collection of networking and security tools, blending technical expertise with a passion for open-source innovation. 





Tuesday, April 8, 2025

Monday, April 7, 2025

Why Is My 1 Gb Really 100mb?

 


I’ve seen various themes on the same scenario multiple times;

-          Client upgrades network components and sees no improvement, or gets worse performance and has no idea why.

-          Could be a new access point, new switch, router, firewall, internet package or client computer


There are multiple issues with this scenario that I can highlight with a few questions

-          Do you know what the performance was before?

-          How did you test?

-          Did you monitor?

-          How long did you test for?

-          Was there any business or social events that would impact performance like tax season for an accounting department or Christmas season for a department store?

Let take a simple scenario where the analyst upgraded the internet bandwidth from 100 Mb/s to 1 Gb/s. He performed a simple speedtest from speedtest.net before and after the upgrade, from the same computer, at the same time, multiple times.

Before the upgrade, the analyst recorded an average of 93 Mb/s upload and download.  After the upgrade the numbers were identical. He immediately checked his computer nic speed, which was 1 Gb/FD and same for his switch port.

Spoiler alert:  in this case there was a cable between the firewall and switch that was running at 100 Mbs since the cable was ‘marginal’ at best.

I replicated this scenario in my lab and created this video for your enjoyment and entertainment.

Enjoy



Sunday, April 6, 2025

Sentimental Sundays

 

Acoustic Modem

The acoustic modem, an ingenious relic of early computing, represents a fascinating chapter in the history of data communication. Developed in the mid-20th century, it was designed to transmit digital information over telephone lines by converting electrical signals into sound waves. The device typically featured a pair of rubber cups that cradled a standard telephone handset—one cup for the speaker to send data and another for the microphone to receive it. By modulating binary data into audible tones, often using frequency-shift keying (FSK), the acoustic modem allowed computers to "talk" to each other through the existing telephone infrastructure, a groundbreaking concept at a time when dedicated data networks were virtually nonexistent.


In its heyday, particularly during the 1960s and 1970s, the acoustic modem was a cornerstone of early internet precursors like ARPANET and the burgeoning world of personal computing. Speeds were modest by today’s standards, ranging from 110 to 300 baud (roughly equivalent to bits per second), though later models pushed into the 1200 baud range. Users would dial a remote system, wait for a carrier tone, and then physically place the handset into the modem’s cups—a process that demanded patience and a quiet room, as background noise could easily disrupt the connection. This clunky yet effective technology bridged the gap between isolated machines, enabling everything from academic research to the first online bulletin board systems (BBS), laying the groundwork for the connected world we know today.


While acoustic modems have largely faded into obscurity, replaced by faster, more reliable direct-connection modems and broadband technologies, their legacy endures. They symbolize a time of ingenuity and experimentation, when engineers and hobbyists alike worked within the constraints of analog systems to forge digital pathways. Collectors and retrocomputing enthusiasts still cherish these devices, occasionally firing them up to hear the nostalgic screeches and warbles of data transmission. In an era of fiber optics and 5G, the acoustic modem stands as a testament to how far communication technology has come—and a reminder of the creative solutions that once turned telephone lines into conduits for the information age.


Popular post