Skip to content

kn-sock

PyPI version

A simplified socket programming toolkit for Python that makes network communication easy and efficient.

Features

  • TCP/UDP Messaging: Supports both synchronous and asynchronous communication
  • Secure Communication: SSL/TLS support for encrypted connections
  • JSON Socket Communication: Easily send and receive JSON data over sockets
  • File Transfer: Transfer files between clients and servers with progress tracking
  • Live Streaming: Multi-video streaming with adaptive bitrate
  • Video Chat: Real-time multi-client video chat with voice
  • WebSocket Support: Full WebSocket server and client implementation
  • HTTP/HTTPS: Simple HTTP client and server helpers
  • Pub/Sub & RPC: Publish/subscribe messaging and remote procedure calls
  • Message Queuing: Advanced queue management for reliable message delivery
  • Load Balancing: Distribute connections across multiple servers
  • Data Compression: Built-in compression for bandwidth optimization
  • Protocol Buffers: Support for efficient binary serialization
  • Decorators & Utilities: Helper decorators and utility functions
  • Docker Support: Ready-to-use Docker containers and compose files
  • Interactive CLI: Real-time interactive command-line interface
  • Command-Line Interface: Simple CLI for quick socket operations
  • Connection Pooling: Efficient connection reuse for high-performance applications
  • Network Visibility: ARP scanning, MAC lookup, and DNS monitoring tools

Installation

pip install kn-sock

Quick Start

Here's a simple example to get you started:

# Server
from kn_sock import start_tcp_server

def handle_message(data, addr, client_socket):
    print(f"Received from {addr}: {data.decode('utf-8')}")
    client_socket.sendall(b"Message received!")

start_tcp_server(8080, handle_message)
# Client
from kn_sock import send_tcp_message

send_tcp_message("localhost", 8080, "Hello, World!")

Docker Quick Start

# Run with Docker Compose
docker-compose run knsock --help

# Run tests
docker-compose run test

For detailed Docker usage, see the Docker guide.

What's Next?

Protocol Documentation

Advanced Features

Reference & Examples

Network Visibility Tools

⚠️ ETHICAL WARNING: These tools are intended for use in authorized networks such as schools, labs, or controlled IT environments. Monitoring user traffic may be illegal without explicit consent. Use responsibly and ethically.

Network Monitoring