{"id":15719782,"url":"https://github.com/dorkbox/network","last_synced_at":"2025-05-12T13:45:47.216Z","repository":{"id":49927456,"uuid":"53281134","full_name":"dorkbox/Network","owner":"dorkbox","description":"High-performance, event-driven/reactive network stack for Java 11+","archived":false,"fork":false,"pushed_at":"2024-05-12T21:24:28.000Z","size":6317,"stargazers_count":7,"open_issues_count":1,"forks_count":2,"subscribers_count":3,"default_branch":"master","last_synced_at":"2025-03-31T22:41:29.629Z","etag":null,"topics":["aeron","networking","udp"],"latest_commit_sha":null,"homepage":"","language":"Kotlin","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"other","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/dorkbox.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2016-03-06T23:09:42.000Z","updated_at":"2024-05-12T21:24:30.000Z","dependencies_parsed_at":"2024-10-24T15:29:45.777Z","dependency_job_id":"53e44b90-3e76-495d-ab7a-7374efb7c591","html_url":"https://github.com/dorkbox/Network","commit_stats":null,"previous_names":[],"tags_count":51,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dorkbox%2FNetwork","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dorkbox%2FNetwork/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dorkbox%2FNetwork/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dorkbox%2FNetwork/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/dorkbox","download_url":"https://codeload.github.com/dorkbox/Network/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":253749942,"owners_count":21958224,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["aeron","networking","udp"],"created_at":"2024-10-03T21:56:45.375Z","updated_at":"2025-05-12T13:45:47.186Z","avatar_url":"https://github.com/dorkbox.png","language":"Kotlin","funding_links":[],"categories":[],"sub_categories":[],"readme":"Network\n=======\n\n###### [![Dorkbox](https://badge.dorkbox.com/dorkbox.svg \"Dorkbox\")](https://git.dorkbox.com/dorkbox/Network) [![Github](https://badge.dorkbox.com/github.svg \"Github\")](https://github.com/dorkbox/Network) [![Gitlab](https://badge.dorkbox.com/gitlab.svg \"Gitlab\")](https://gitlab.com/dorkbox/Network)\n\n\nThe Network project is an ~~encrypted~~, high-performance, event-driven/reactive Network stack with DNS and RMI, using Aeron, Kryo, KryoNet RMI, ~~encryption and LZ4 via UDP.~~ \n\nThese are the main features:\n\n~~* The connection between endpoints is AES256-GCM / EC curve25519. (WIP, this was updated for use with Aeron, which changes this)~~\n~~* The connection data is LZ4 compressed and byte-packed for small payload sizes. (WIP, this was updated for use with Aeron, which \n  changes this)~~\n### The connection supports:\n - Sending object (via the Kryo serialization framework)\n - Sending arbitrarily large objects\n - Remote Method Invocation\n   - Blocking\n   - Non-Blocking\n   - Void returns\n   - Exceptions can be returned\n   - Kotlin coroutine suspend functions\n - ~~Sending data when Idle~~\n - \"Pinging\" the remote end (for measuring round-trip time)\n - Firewall connections by IP+CIDR\n - ~~Specify the connection type (nothing, compress, compress+encrypt)~~\n \n- The available transports is UDP\n\n- This is for cross-platform use, specifically - linux 32/64, mac 64, and windows 32/64. Java 1.11+\n- This library is designed to be used with kotlin, specifically the use of coroutines.\n    \n``` java\nval configurationServer = ServerConfiguration()\nconfigurationServer.settingsStore = Storage.Memory() // don't want to persist anything on disk!\nconfigurationServer.port = 2000\nconfigurationServer.enableIPv4 = true\n\nval server: Server\u003cConnection\u003e = Server(configurationServer)\n\nserver.onMessage\u003cString\u003e { message -\u003e\n    logger.error(\"Received message '$message'\")\n}\n\nserver.bind()\n\n\n\nval configurationClient = ClientConfiguration()\nconfigurationClient.settingsStore = Storage.Memory() // don't want to persist anything on disk!\nconfigurationClient.port = 2000\n\nval client: Client\u003cConnection\u003e = Client(configurationClient)\n\nclient.onConnect {\n    send(\"client test message\")\n}\n\nclient.connect()\n\n```\n\n\n\u0026nbsp; \n\u0026nbsp; \n\nMaven Info\n---------\n```\n\u003cdependencies\u003e\n    ...\n    \u003cdependency\u003e\n      \u003cgroupId\u003ecom.dorkbox\u003c/groupId\u003e\n      \u003cartifactId\u003eNetwork\u003c/artifactId\u003e\n      \u003cversion\u003e6.15\u003c/version\u003e\n    \u003c/dependency\u003e\n\u003c/dependencies\u003e\n```\n\nGradle Info\n---------\n```\ndependencies {\n    ...\n    implementation(\"com.dorkbox:Network:6.15\")\n}\n```\n\nLicense\n---------\nThis project is © 2023 dorkbox llc, and is distributed under the terms of the Apache v2.0 License. See file \"LICENSE\" for further \nreferences.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fdorkbox%2Fnetwork","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fdorkbox%2Fnetwork","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fdorkbox%2Fnetwork/lists"}