Releases: Oloxx/drop
Releases · Oloxx/drop
Release list
v0.5.2
v0.5.1
v0.5.0
v0.4.2
What's Changed
- fix(cli): renovar lease UPnP periódicamente, limpiar en exit y reintentar ante conflicto by @Oloxx in #47
Full Changelog: v0.4.1...v0.4.2
v0.4.1
What's Changed
Full Changelog: v0.4.0...v0.4.1
v0.4.0
What's Changed
- v0.4.0 - Codigos de sala memorizables (4271-lemon-radar-tiger-orbit) by @Oloxx in #42
- ci: releases automaticas al empujar un tag, con firma macOS y checksums by @Oloxx in #43
- fix(build): generar el blob SEA con el Node exacto de las bases (v0.4.0 salio rota) by @Oloxx in #44
- fix(ci): macos-13 esta retirado, usar macos-15-intel by @Oloxx in #45
New Contributors
Full Changelog: v0.3.5...v0.4.0
v0.3.5 - Mapeo UPnP y Conexiones P2P Directas por Internet
Drop v0.3.5 — Mapeo UPnP Automático y Conexiones Directas por Internet
🚀 Nuevas Características y Mejoras
- Mapeo Automático de Puertos UPnP (IGD):
- Drop interactúa automáticamente con routers residenciales compatibles con UPnP para mapear temporalmente el puerto TCP necesario para transferencias directas y pruebas de velocidad (
drop speed), cerrando el mapeo de forma limpia al terminar la sesión.
- Drop interactúa automáticamente con routers residenciales compatibles con UPnP para mapear temporalmente el puerto TCP necesario para transferencias directas y pruebas de velocidad (
- Detección de IP Pública WAN:
- El cliente obtiene su IP pública tanto a través de UPnP como mediante el servidor de señalización, permitiendo el intercambio de candidatos WAN además de las IPs de LAN y VPN.
- Sondeo Concurrente al estilo Happy Eyeballs:
- El receptor prueba en paralelo todas las IPs candidatas (LAN, VPN y WAN pública) y adopta de inmediato la primera que responda, minimizando la latencia de establecimiento.
- Parámetro
-p, --portconfigurable:- Permite especificar manualmente el puerto de escucha en
drop sendydrop speedpara usuarios con port forwarding manual estático.
- Permite especificar manualmente el puerto de escucha en
- Control de flujo y ACKs robustos:
- Mitiga la acumulación excesiva de memoria en transferencias de alta velocidad y sincroniza el progreso en tiempo real con confirmaciones del receptor.
📦 Binarios autónomos disponibles (v0.3.5):
- Windows (x64):
drop-v0.3.5-windows-x64.exe - Linux (x64):
drop-v0.3.5-linux-x64.tar.gz - Linux (ARM64):
drop-v0.3.5-linux-arm64.tar.gz - macOS (Apple Silicon):
drop-v0.3.5-macos-arm64.tar.gz - macOS (Intel):
drop-v0.3.5-macos-x64.tar.gz
v0.3.4 - Robust Gigabit Phase Coordination
Drop v0.3.4 — Sincronización Robusta de Fases en Enlaces Gigabit
⚡ Corrección de Sincronización Asíncrona (Race Conditions a 1 Gbps)
- Cola de mensajes de control persistente (
controlQueue):- En redes Gigabit de ultra baja latencia (< 1 ms), el envío de paquetes de señalización entre fases ocurría de forma tan veloz que algunos mensajes de control llegaban antes de que el receptor terminara de inicializar sus escuchadores locales, provocando bloqueos al quedarse esperando una señal que ya había sido recibida y descartada.
- Se implementó un despachador con buffer persistente (
controlQueue+waitForControl) que garantiza que ningún mensaje de sincronización se pierda, sin importar la velocidad de la red o diferencias de tiempo entre procesos.
- Handshake explícito de cambio de fase (
start-phase2):- El anfitrión ahora coordina el inicio de la segunda fase (bajada) notificando activamente al invitado una vez que su propio receptor TCP está completamente preparado y a la escucha.
📦 Binarios autónomos disponibles (v0.3.4):
- Windows (x64):
drop-v0.3.4-windows-x64.exe - Linux (x64):
drop-v0.3.4-linux-x64.tar.gz - Linux (ARM64):
drop-v0.3.4-linux-arm64.tar.gz - macOS (Apple Silicon):
drop-v0.3.4-macos-arm64.tar.gz - macOS (Intel):
drop-v0.3.4-macos-x64.tar.gz
v0.3.3 - Zero-CPU Payload Framing for Embedded & ARM Devices
Drop v0.3.3 — Optimización de CPU en Speed Tester para Raspberry Pi y Dispositivos Embebidos
⚡ Rendimiento y Optimización de CPU
- Eliminación del cuello de botella criptográfico en pruebas de saturación de red:
- En la prueba de velocidad directa TCP (
drop speed), los paquetes de carga útil (payload dummy) se procesaban mediante descifrado AES-256-GCM en el receptor antes de ser descartados. - En PCs x86 con aceleración hardware AES-NI esto ocurría en microsegundos, pero en dispositivos de bajo consumo o placas ARM sin instrucciones criptográficas por hardware (como Raspberry Pi 2 / 3B), el descifrado por software saturaba el 100% de la CPU limitando la medición a ~6 MB/s.
- Se ha rediseñado el encapsulado del canal TCP: los mensajes de control, handshake y autenticación continúan 100% cifrados y protegidos con AES-256-GCM, mientras que los bloques dummy de saturación se procesan con coste de CPU cero (
O(1)), permitiendo medir el ancho de banda real de la interfaz de red física del dispositivo.
- En la prueba de velocidad directa TCP (
📦 Binarios autónomos disponibles (v0.3.3):
- Windows (x64):
drop-v0.3.3-windows-x64.exe - Linux (x64):
drop-v0.3.3-linux-x64.tar.gz - Linux (ARM64):
drop-v0.3.3-linux-arm64.tar.gz - macOS (Apple Silicon):
drop-v0.3.3-macos-arm64.tar.gz - macOS (Intel):
drop-v0.3.3-macos-x64.tar.gz
v0.3.2 - Multi-interface LAN Discovery & Smart Direct Routing
Drop v0.3.2 — Broadcast Multinterfaz y Sondeo Inteligente de IPs Directas
🚀 Mejoras de Conectividad LAN Directa
- Broadcast UDP Multiinterfaz (Subnet Directed Broadcast):
- En equipos con múltiples tarjetas de red físicas y virtuales (como Radmin VPN, Tailscale, WSL o VirtualBox), Windows suele enrutar el broadcast genérico
255.255.255.255exclusivamente al adaptador con métrica de enrutamiento más baja (ej. VPNs virtuales), impidiendo que los paquetes de descubrimiento alcancen la LAN real. - A partir de esta versión, Drop calcula y emite pings UDP a las direcciones de difusión específicas de cada subred activa (ej.
192.168.1.255), garantizando que el anuncio llegue a todos los dispositivos de la red física local.
- En equipos con múltiples tarjetas de red físicas y virtuales (como Radmin VPN, Tailscale, WSL o VirtualBox), Windows suele enrutar el broadcast genérico
- Sondeo Inteligente de IPs Candidatas:
- Al recibir las direcciones de red del anfitrión mediante señalización, el receptor ahora clasifica y prioriza las IPs con mayor afinidad a la subred local (
192.168.x.x,10.x.x.x,172.16-31.x.x) y sondea secuencialmente las rutas TCP antes de recurrir a Relay.
- Al recibir las direcciones de red del anfitrión mediante señalización, el receptor ahora clasifica y prioriza las IPs con mayor afinidad a la subred local (
- Limpieza de transiciones de pantalla:
- Eliminados parpadeos y restos de texto en consolas al cambiar de estados en
drop speedydrop recv.
- Eliminados parpadeos y restos de texto en consolas al cambiar de estados en
📦 Binarios autónomos disponibles (v0.3.2):
- Windows (x64):
drop-v0.3.2-windows-x64.exe - Linux (x64):
drop-v0.3.2-linux-x64.tar.gz - Linux (ARM64):
drop-v0.3.2-linux-arm64.tar.gz - macOS (Apple Silicon):
drop-v0.3.2-macos-arm64.tar.gz - macOS (Intel):
drop-v0.3.2-macos-x64.tar.gz