Best of NetworkingNovember 2024

  1. 1
    Article
    Avatar of danielhaxxsedaniel.haxx.se·2y

    curl -v google.com

    A humorous and insightful video explanation about what happens behind the scenes when using the curl command to access google.com. The author found the video entertaining and decided to share it.

  2. 2
    Article
    Avatar of hnHacker News·2y

    Computer Networking Fundamentals

    This post provides a succinct and illustrated guide to computer networking basics, focusing on practical knowledge for developers. It covers fundamental concepts like the Data link layer, iptables in Linux, SSH tunnels, and the differences between network bridges and switches. Additionally, the post includes various hands-on labs to help readers understand and apply the concepts in real-world settings.

  3. 3
    Article
    Avatar of bytebytegoByteByteGo·2y

    EP139: Design a Live Streaming System

    Live streaming involves sending video content over the internet in near real-time, which is both compute-intensive and time-consuming. The process includes encoding video and audio, connecting to point-of-presence servers, transcoding into different resolutions, segmenting videos, and using HTTP Live Streaming (HLS) for delivery. Additionally, content is cached by CDNs for efficient delivery, and videos can be stored for replay on platforms like Amazon S3.

  4. 4
    Article
    Avatar of newstackThe New Stack·2y

    SysLinuxOS, A Linux Distro for System Administrators

    SysLinuxOS is a Debian-based Linux distribution tailored for system integrators and administrators. It boasts a variety of pre-installed networking and system tools, supporting multiple languages and offering GNOME or MATE desktops. Developed by Milan-based Franco Conidi, SysLinuxOS aims to provide a robust, feature-rich OS with enhanced security and monitoring tools. Notable inclusions are advanced firewalls, network analysis tools, and monitoring solutions like Nagios4 and Zabbix. SysLinuxOS is designed to work out of the box, offering extensive hardware support and a wide range of software for various administrative tasks.

  5. 5
    Article
    Avatar of gcgitconnected·2y

    Data Centers in System Design

    A data center is a building full of servers, storage systems, and network equipment. Multi-data center architectures improve reliability and speed by connecting users to the nearest center using GeoDNS for traffic direction. Failover scenarios are managed by automatic detection and routing updates. Scaling strategies include component decoupling into microservices and using messaging architectures with message queues. Companies like Netflix and Amazon effectively implement these concepts for redundancy and scalability.

  6. 6
    Article
    Avatar of systemdesigncodexSystem Design Codex·1y

    How Consistent Hashing Works?

    Consistent hashing is a technique used for distributing keys uniformly across a cluster of nodes, minimizing the number of keys that need to be moved when nodes are added or removed. Steps include hashing keys and nodes using a hash function, placing them on a circular space or ring, and assigning keys to the nearest node in a clockwise direction. Virtual nodes help with load balancing by mapping physical nodes to multiple positions on the ring. This makes the technique scalable, load-balanced, and fault-tolerant, though it relies heavily on the quality of the hash function used.

  7. 7
    Article
    Avatar of fettblogfettblog.eu·2y

    Tokio: Getting Started

    This guide provides instructions on how to create your first Tokio application in Rust. It covers adding the Tokio dependency, creating a basic 'Hello, World!' TCP server, and explains key concepts such as the #[tokio::main] attribute macro, TCP listeners, and task spawning. An exercise to create an echo server and its solution are also included.

  8. 8
    Article
    Avatar of devsquadDev Squad·2y

    How DNS works. What is DNS?

    DNS, or Domain Name System, is critical for translating human-readable domain names into IP addresses that computers use to identify each other on the network. Understanding how DNS works can help improve internet speed and security.

  9. 9
    Article
    Avatar of communityCommunity Picks·2y

    Advanced Docker Quiz: Docker Commands, Networking, and Container Management

    Challenge your Docker expertise with this quiz focusing on advanced topics such as Docker networking, multi-stage builds, bind mounts, and container health checks. Tailored for seasoned DevOps professionals, it aims to enhance your containerization skills and prepare you for Docker certification or advanced DevOps roles.

  10. 10
    Article
    Avatar of hnHacker News·2y

    Docker Compose Isn't Enough

    Docker Compose simplifies deploying applications using containers but falls short when scaling or managing complex setups. Challenges include handling ports, reverse proxies, and database configurations. The author proposes a higher-level abstraction in container management, introducing a new runtime, Tealok. It aims to standardize interfaces and operations, making self-hosting more accessible and efficient.

  11. 11
    Article
    Avatar of communityCommunity Picks·2y

    Five Lessons for Five Years in Tech

    Reflecting on five years in the tech industry, the author highlights key lessons including embracing change, prioritizing people and relationships, building resilience, leveraging the power of storytelling, and the concept of 'creative destruction' for growth and refinement. These insights are drawn from both personal experiences and studies, underscoring the importance of adaptability, networking, and continuous learning for career development.

  12. 12
    Article
    Avatar of castaiCast AI·1y

    Complete Guide to Kubernetes Services with Examples

    Kubernetes services abstract endpoints and manage network communication within a cluster. They simplify load balancing, discovery, and scaling by providing stable network identities for Pods. The main types of services include ClusterIP, NodePort, LoadBalancer, and ExternalName. Each type serves distinct use cases and has specific configurations. Best practices include using the appropriate service type, monitoring traffic, organizing services properly, and considering alternatives like Ingress or Service Mesh for complex needs.

  13. 13
    Article
    Avatar of communityCommunity Picks·2y

    Exploring the browser rendering process

    The post explores the browser's rendering process, detailing the steps from entering a URL to rendering the website on the screen. It covers DNS lookup, TCP/TLS handshake, HTTP request/response cycle, tokenization, creation of the DOM and CSSOM trees, render tree creation, layout calculation, and the painting phase. Understanding these steps can help developers build more efficient websites.

  14. 14
    Article
    Avatar of c_communityC/C++ Community·2y

    Building a Simple TCP Server in C

    Building a simple TCP server in C helps to understand socket programming and server-client connections. This project initializes a TCP socket on port 8080, binds and listens for client connections, and prints received data. The project uses a modular structure with CMake as the build system, including organized files for server logic and socket utilities. The setup allows easy extension and modification of components for scalable network applications.

  15. 15
    Article
    Avatar of kentcdoddsKent C. Dodds·2y

    AI is taking your job

    In the digital era dominated by AI and automated processes, personal connections and in-person interactions hold immense value. While job applications are increasingly flooded with AI-generated resumes, real human connections can cut through the noise and lead to genuine opportunities. The author emphasizes the importance of face-to-face networking and cites personal experiences of how these connections have been game-changers in their career. Events like Epic Web Conf and Epic Web Camp are highlighted as platforms designed to foster meaningful relationships that go beyond digital interactions.

  16. 16
    Article
    Avatar of habrhabr·1y

    Debugging SSH connections: A Comprehensive Guide

    SSH is integral to remote system administration and secure access, but debugging connection issues can be complex due to cryptographic protocols and security-focused error messages. Understanding the SSH connection process, common errors, and their solutions is key. Techniques include checking server status, verifying DNS and network configurations, correcting permissions, and enabling verbose logging. Advanced troubleshooting with server-side logging and tools like netcat or traceroute can provide deeper insights. Effective SSH troubleshooting requires a methodical approach and comprehensive understanding of potential failure points.

  17. 17
    Article
    Avatar of devsquadDev Squad·2y

    We're now a family of 5000+ genius minds! 🎉

    The DevSquad community has reached an impressive milestone of over 5000 members. The growth of this community is a testament to the collective effort, support, and shared knowledge among its members. Let's continue to learn, build, and inspire each other.

  18. 18
    Article
    Avatar of baeldungBaeldung·2y

    Finding IP Address of a URL in Java

    Learn how to find the IP address of a URL in Java through various methods, such as using the InetAddress class, socket connections, and third-party libraries like Apache Commons Lang and Google Guava. Each approach is illustrated with code examples and unit tests to ensure accuracy.

  19. 19
    Article
    Avatar of fluttersquadFlutter Developers·2y

    Management of REST API Network Calls

    Managing REST API calls in Flutter can be challenging due to Dart/Flutter's multitasking environment. A structural approach for creating a performant network layer can simplify this process by reducing duplicate code, alleviating the main thread, and offering structured error handling. It's crucial to note that example code might miss break statements, so modifications are necessary. The concept serves as a good foundation for further extension in applications.

  20. 20
    Video
    Avatar of laraveldailyLaravel Daily·2y

    8 Career Tips from My 25 Years as Developer

    Twenty-five years of experience in development have resulted in valuable advice for career growth and productivity. Key tips discussed include: showcasing your skills to expand job opportunities, learning from developers using different languages and frameworks, avoiding quick but inaccurate project estimates, accepting and managing heavy workloads without complaints, enhancing negotiation skills with bosses and teammates, resolving conflicts within your team effectively, continuously improving tool proficiency, and staying curious about new technologies and trends.

  21. 21
    Article
    Avatar of evolvedevevolvedev·1y

    How to implement socket programming in C: Both server and client

    Learn how to implement socket programming in C by building both a server and client application with a detailed, step-by-step guide and code examples.

  22. 22
    Video
    Avatar of communityCommunity Picks·2y

    Pingora vs Nginx Performance Benchmark: My NEW Favorite Proxy! ❤️

    A performance benchmark comparing Nginx and Pingora, a Rust-based framework for building network services, focused on evaluating latency, throughput, availability, and resource utilization. The tests were conducted using AWS EC2 instances, highlighting the efficient performance of Pingora under high loads, with lower latency and higher throughput than Nginx. Detailed configurations and optimization tips for both proxies are discussed.

  23. 23
    Article
    Avatar of fettblogfettblog.eu·2y

    Network Applications on the Tokio Stack

    A guide that compiles articles and exercises on writing network applications using the Tokio stack. Based on a workshop, it teaches new patterns and concepts applied in real-world exercises. It is an ongoing project with updates published over time.

  24. 24
    Article
    Avatar of hnHacker News·1y

    Making your connection bad

    The post explores the behavior of various applications when subjected to a slow internet connection with significant packet loss. It includes observations of how F-Droid, Steam, Telegram, Discord, and git handle poor connectivity. Instructions are provided to simulate these conditions on Linux and Android devices.