Unterschiede
Die Zeilen, in denen die beiden Spalten auseinandergehen
Jede Matrixzeile oben, die nicht in beiden Spalten ein Häkchen hat, noch einmal mit den Belegen dahinter. Nach Thema gruppiert statt nach Produkt, weil den meisten Projekten zwei oder drei davon wichtig sind und sonst nichts.
MQTT-Broker, MQTT-SN und CoAP
IPWorks IoT liefert MQTTBroker, von /n software dokumentiert als “a lightweight, fully-featured MQTT broker implementation with support for version 3.1.1”, lauschend über Klartext-TCP, TLS, WebSocket und sicheres WebSocket, mit Ereignissen für Session-Anfragen, Abonnements und Publishes. Dasselbe Toolkit liefert MQTTSN und CoAP. sgcWebSockets hat keines der drei: keine MQTT-Broker-Komponente und nirgends im Quellbaum eine MQTT-SN- oder CoAP-Unit. Seine MQTT-Unterstützung ist ein Client, TsgcWSPClient_MQTT, der MQTT 3.1.1 oder 5.0 spricht.
Azure Relay, Amazon SNS und XMPP
IPWorks MQ dokumentiert AzureRelaySender, AzureRelayReceiver und AzureRelayProxy sowie sowohl AmazonSQS als auch AmazonSNS. XMPP taucht in der Komponentenreferenz von IPWorks, IPWorks MQ und IPWorks IoT gleichermaßen auf. sgcWebSockets registriert TsgcHTTPAWS_SQS_Client für Amazon SQS und hat keine Komponente für Azure Relay, Amazon SNS oder XMPP.
WAMP, Kafka und die verwalteten IoT-Broker
sgcWebSockets registriert TsgcWSPClient_WAMP, TsgcWSPClient_WAMP2 und TsgcWSPServer_WAMP für WAMP, TsgcWSPClient_Kafka für Kafka, und TsgcIoTAmazon_MQTT_Client und TsgcIoTAzure_MQTT_Client vorkonfiguriert für AWS IoT Core und Azure IoT Hub. Weder WAMP noch Kafka taucht in der Komponentenreferenz von IPWorks MQ oder IPWorks IoT auf. Beide Produkte erreichen einen verwalteten Cloud-Broker auch über eine generische MQTT-Komponente.
Protokollabdeckung außerhalb von Echtzeit-Messaging
IPWorks 2024 dokumentiert 46 Komponenten in einem einzigen Toolkit, neben dem WebSocket-Paar auch FTP, SMTP, IMAP, POP, LDAP, DNS, SOAP, OData, WebDAV, CalDAV, SMPP, Telnet, TFTP und SysLog. Der breitere Katalog von /n software ergänzt eigene Toolkits für SSH und SFTP, SNMP, EDI einschließlich AS2Sender und AS2Receiver, S/MIME, OpenPGP, VoIP, Bluetooth LE und NFC. sgcWebSockets deckt nichts davon ab. Außerhalb von WebSocket besteht seine Oberfläche aus HTTP, HTTP/2, gRPC, den Messaging-Protokollen, den Cloud- und Börsen-API-Clients und dem P2P-Stack.
HTTP und WebSocket auf einem Port
sgcWebSockets bietet TsgcWebSocketHTTPServer, der HTTP und WebSocket auf derselben Bindung terminiert, ein DocumentRoot ausliefert, Sessions hält, HTTP-Komprimierung macht, OnCommandGet für Routen bereitstellt und einen Block HTTP2Options trägt. Darum herum sitzen eine Firewall, ein Rate Limiter, ein Circuit Breaker, eine API-Schlüsselverwaltung, ein Proxy und ein Load Balancer, jeweils als eigene Komponente registriert. /n software dokumentiert WSServer als Komponente, die “used to create a WebSocket server” ist, und die Komponentenreferenz von IPWorks 2024 führt keine HTTP-Server-Komponente auf, HTTP wird also von anderer Stelle im Stack ausgeliefert.
Client-Reconnect
sgcWebSockets stellt am Client einen WatchDog bereit, mit Enabled, Interval, Attempts, Backoff mit wdbFixed oder wdbExponential, BackoffMultiplier, MaxInterval und Jitter. Die veröffentlichten Listen der Eigenschaften, Methoden, Ereignisse und Konfigurationen für den IPWorks-WSClient enthalten keine Reconnect-Funktion, eine Reconnect-Schleife ist also Anwendungscode. Beide Komponenten lösen ein Disconnect-Ereignis aus, an dem sich das aufhängen lässt.
Editionen in anderen Programmiersprachen
Die IPWorks-Downloadseite führt zehn Editionen desselben Toolkits auf: .NET, Java, C++, macOS, JavaScript, Delphi, C++ Builder, PHP, Python und ActiveX/ASP/COM, und das Plattformmenü von /n software nennt zusätzlich Node.js, Go, Rust, Android, iOS, Swift und BizTalk. /n software beschreibt das Ergebnis als “common component interfaces across platforms and technologies”. sgcWebSockets erscheint für Delphi und C++ Builder, mit einem eigenen C#-Port, der dieselben Tsgc-Klassennamen spiegelt.
Compiler, Ziele und was neben der ausführbaren Datei ausgeliefert wird
/n software gibt Unterstützung an für “all Delphi versions between Delphi 6 and RAD Studio 13”, für “Windows, Linux, and macOS” und für “Lazarus IDE and Free Pascal”. Die Dokumentation der Delphi Edition nennt fünf Ziele, Windows 32-Bit, Windows 64-Bit, Linux 64-Bit, macOS 64-Bit und macOS ARM 64-Bit, wobei unter Linux und macOS libipworks.so.24.0 bzw. libipworks.24.0.dylib neben der ausführbaren Datei ausgeliefert wird und unter Windows keine DLL-Abhängigkeit besteht. sgcWebSockets liefert Runtime-Packages von Delphi 7 bis Delphi 13, C++-Builder-Packages von C2007 bis C13 und ein Lazarus-Package und führt IOS- und ANDROID-Zweige durch sgcVer.inc, darunter einen JNI-gestützten TLS-Handler unter Android und einen Network.framework-Handler auf Apple-Plattformen. Es kompiliert auf jedem Ziel aus Pascal-Quellcode in die ausführbare Datei.
HTTP/2, HTTP/3 und QUIC
Beide haben einen HTTP/2-Client für Delphi: IPWorks über ein HTTPVersion mit “2.0” und automatischem Fallback auf HTTP/1.1, sgcWebSockets über TsgcHTTP2Client. Darüber trennen sich die Wege. Der sgcWebSockets-HTTP-Server stellt einen Block HTTP2Options bereit, und das sgcQUIC-Pack ergänzt TsgcQUICClient, TsgcQUICServer, TsgcHTTP3Client und TsgcHTTP3Server. /n software dokumentiert ein HTTPVersion mit “3.0” und stellt fest: “HTTP/3 is supported only in .NET and Java”, die Delphi Edition führt es also nicht.
LLM-Clients, MCP und WebRTC
Beide decken das Model Context Protocol ab: sgcWebSockets über TsgcWSAPIClient_MCP und TsgcWSAPIServer_MCP, /n software über die eigene MCP SDK 2026 Delphi Edition, über Standardein- und -ausgabe oder über HTTP. Über MCP hinaus liefert sgcWebSockets Chat-Clients für OpenAI, Anthropic, Gemini, DeepSeek, Grok, Mistral und Ollama sowie einen WebRTC-Stack aus TsgcSTUNClient, TsgcSTUNServer, TsgcTURNClient, TsgcTURNServer, TsgcICEClient und TsgcRTCPeerConnection. Der veröffentlichte Katalog von /n software führt keinen LLM-Chat-Client und keine WebRTC-Komponenten.
Quellcode und was die Lizenz erlaubt
Die Quellcode-Editionen von sgcWebSockets enthalten den vollständigen Delphi- und C++-Builder-Quellcode, und genau dieser Quellcode ist das, was das Projekt kompiliert; die Basic-Editionen liefern stattdessen vorkompilierte DCU-Dateien. Die veröffentlichten Kaufoptionen von /n software für die IPWorks Delphi Edition führen eine einzige Lizenzzeile ohne Quellcode-Option auf, und die Endbenutzer-Lizenzvereinbarung besagt, dass du zustimmst, “not to adapt, translate, reverse engineer, decompile or otherwise derive the source code for the Software”. Der Premium Support von /n software umfasst allerdings, was dort “limited source code analysis related to the components” genannt wird.