dart_udt library
Scaffold package for a cross-platform Dart port of UDT.
Classes
- UdtAckControlInfo
- Typed ACK payload for deterministic ACK packet encoding.
- UdtAckNakTimerModel
- Minimal ACK/NAK timeout model with injectable clock.
- UdtAcknowledgedAck
- UdtAckNumber
-
ACK sub-sequence helper (upstream
CAckNo). - UdtAckWindow
-
Pure-Dart ACK history window ported from upstream
window.h/window.cppCACKWindow. - UdtAsyncMutex
-
Pure-Dart concurrency helpers that replace upstream pthread lock/cond/thread
patterns in
queue.h/queue.cppwith deterministic async primitives. - UdtAsyncSignal
- Condition-like signal primitive for async wait/notify patterns.
- UdtBindAttemptResult
- UdtBindPlan
-
UdtCacheEntry<
T extends UdtCacheEntry< T> > -
Base cache-entry contract mirroring upstream
CCacheItemsemantics. - UdtCircuitBreaker
- Deterministic circuit breaker built on top of connectivity recovery policy.
- UdtCircuitBreakerRecoveryContext
- UdtCircuitBreakerSnapshot
- UdtCompatibilityProfile
- Consolidated deterministic network compatibility profile for one endpoint.
- UdtCompatibilityProfileBuilder
- Builds a deterministic compatibility profile by composing section-4 planners.
- UdtCongestionControl
-
Pure-Dart base congestion-control wrapper ported from upstream
CCCinccc.h/ccc.cpp. - UdtConnectAttemptResult
- UdtConnectivityRecoveryPolicy
- Deterministic connectivity-recovery policy for section-4 reliability work.
- UdtConnectPlan
- UdtControlPacket
- Typed wrapper for UDT control packet header + control information field.
- UdtDefaultCongestionControl
-
Pure-Dart default congestion-control algorithm mirroring upstream
CUDTCCinccc.cpp(init,onACK,onLoss, andonTimeout). - UdtDualStackMatrixRow
- Deterministic matrix rows for section-4 dual-stack planning and CI docs.
- UdtEpoll
- Minimal pure-Dart poll/epoll abstraction for UDT-socket style IDs.
- UdtFakeClock
- Mutable fake clock for deterministic tests.
- UdtHandshake
-
Pure Dart representation of the
CHandShakestructure from upstreampacket.h, encoded as 12 x 32-bit network-order words. -
UdtHashBucket<
T> -
Bucket entry equivalent to upstream
CHash::CBucket. - UdtImpairmentConfig
- UdtImpairmentInput
- UdtImpairmentOutcome
- UdtInfoBlock
-
Typed equivalent of upstream
CInfoBlockincache.h/cache.cpp. - UdtIpAddress
-
Pure-Dart IP helpers mirroring upstream
CIPAddressfromcommon.h. - UdtLatencyLossSimulator
- Deterministic latency/loss/reordering simulator for reproducible tests.
- UdtLifecycleSnapshot
-
UdtLruCache<
T extends UdtCacheEntry< T> > -
Pure-Dart LRU cache port for upstream
CCache<T>incache.h. - UdtMd5
-
Pure-Dart MD5 implementation ported from upstream
md5.h/md5.cpp(original RFC1321-based implementation by L. Peter Deutsch). - UdtMessageDropRequestControlInfo
- Typed Message Drop Request payload (first and last sequence numbers).
- UdtMessageNumber
-
Message-number helpers from upstream
CMsgNo. - UdtMobileConstraintsPolicy
- Deterministic mobile constraints policy model for section-4 planning.
- UdtMobilePolicyDecision
- UdtMobilePolicyInput
- UdtMtuPlanner
- Deterministic MTU/path-MTU planner for Linux/macOS/Windows guidance.
- UdtMtuPlanningDecision
- UdtMtuPlanningInput
- Deterministic MTU planning input for section-4 compatibility work.
- UdtNetworkTransitionSimulator
- Deterministic transition simulator for mobile/network compatibility planning.
- UdtPacket
- Typed Dart packet container replacing upstream pointer/alias C++ layout.
- UdtPacketHeader
- UDT packet header representation with deterministic binary encoding.
- UdtPacketTimeWindow
-
Pure-Dart packet/probe timing window ported from upstream
window.h/window.cppCPktTimeWindow. - UdtPollReadySet
- Poll readiness sets returned by UdtEpoll.wait.
- UdtPortScaffold
- Entrypoint for the UDT port scaffolding.
- UdtProtocolClock
- Deterministic clock abstraction for protocol-state testing.
- UdtRandomSource
- Deterministic random source for network impairment simulation.
- UdtRawDatagramEventSource
- Adapts RawDatagramSocket event streams into UdtSocketEventSource.
- UdtRawDatagramRuntimeTarget
-
Live runtime target backed by
RawDatagramSocket.bind+connect. - UdtRcvLossList
-
Pure-Dart port of upstream
CRcvLossList. - UdtReceiveBuffer
-
Pure-Dart receive-buffer port for upstream
CRcvBufferinbuffer.h/cpp. - UdtReceiveBufferUnit
-
Lightweight receive-unit model equivalent to a populated upstream
CUnit. -
UdtReceiveNode<
T> -
Typed linked-list node model equivalent to upstream
CRNode. - UdtReceiveUnitQueueCounter
-
Shared counter model equivalent to upstream
CUnitQueue::m_iCountupdates. -
UdtReceiveUserList<
T> -
Pure-Dart port of upstream
CRcvUListordering behavior. - UdtRecoveryDecision
- UdtRecoveryInput
- UdtSeededRandomSource
- UdtSendBuffer
-
Pure-Dart sender-buffer port for upstream
CSndBufferinbuffer.h/cpp. - UdtSendBufferReadResult
- Deterministic payload+message-number view returned by UdtSendBuffer.readData and successful UdtSendBuffer.readDataAtOffset calls.
- UdtSendBufferRetransmitResult
-
Retransmission read result equivalent to upstream
CSndBuffer::readData(... offset ...)behavior. - UdtSequenceNumber
-
Sequence-number helpers ported from upstream
common.h(CSeqNo,CAckNo, andCMsgNo) with explicit modular arithmetic. - UdtSerialExecutor
- Serial worker-loop adapter to replace one-off worker-thread loops.
- UdtSndLossList
-
Pure-Dart port of upstream sender/receiver loss lists from
list.h/.cpp. - UdtSocketConnectExecutor
- Deterministic connect executor with explicit family fallback ordering.
- UdtSocketConnectPlanner
- Deterministic connect strategy generator derived from a selected bind plan.
- UdtSocketConnectReport
- UdtSocketConnectTarget
- UdtSocketEventSource
-
Porting adapter for upstream
CEPollwait/readiness model. -
UdtSocketHash<
T> -
Pure-Dart hash-table port of upstream
CHash. - UdtSocketIoEvent
- Normalized socket event emitted by poll event sources.
- UdtSocketLifecycleCoordinator
- Deterministic lifecycle coordinator for section-4 socket integration.
- UdtSocketMatrixIntegrationHarness
- Deterministic harness that wires dual-stack matrix rows into socket-layer runtime planning/execution without requiring live sockets.
- UdtSocketMatrixIntegrationResult
- Result of executing one deterministic dual-stack matrix row through the socket runtime planner + executor pipeline.
- UdtSocketOptionApplicationReport
- UdtSocketOptionApplier
- Applies planned options with graceful-degradation semantics.
- UdtSocketOptionApplyResult
- UdtSocketOptionPlanner
- Cross-platform socket-option planner for upcoming networking port tasks.
- UdtSocketOptionRecommendation
- Deterministic socket option recommendation.
- UdtSocketOptionTarget
-
Target abstraction for applying socket options without binding to concrete
dart:iosocket types in deterministic tests. - UdtSocketRuntimeApplicationReport
- UdtSocketRuntimeApplier
- Applies runtime bind/connect plans with explicit fallback logging.
- UdtSocketRuntimeExecutionReport
- UdtSocketRuntimeExecutor
- Deterministic bind executor that walks runtime bind plans with fallback.
- UdtSocketRuntimePlan
- UdtSocketRuntimePlanner
- Deterministic runtime planner that composes profile + option application into concrete bind-family decisions for upcoming live socket modules.
- UdtSocketRuntimeTarget
- Runtime adapter boundary for upcoming live-socket modules.
- UdtTimer
-
Pure-Dart timer/event helper port for upstream
CTimerincommon.h/cpp. - UdtTransitionEvent
- Deterministic transition event used for section-4 network/mobile simulation.
- UdtTransitionSnapshot
- Snapshot of policy + timing effects after processing one transition step.
Enums
- UdtBindFamily
- Address family selection for deterministic bind/connect runtime planning.
- UdtCircuitBreakerState
- Circuit breaker states for deterministic network failure handling.
- UdtControlType
-
UDT control packet type values mirrored from upstream
packet.cpp. - UdtEndpointFamily
- Endpoint family target for deterministic socket connect planning.
- UdtIpMode
- Supported UDT address-family targets for deterministic compatibility planning.
- UdtLifecycleState
- UdtMobileAppState
- Mobile app lifecycle/network transition state for deterministic planning.
- UdtMobileNetworkType
- UdtModule
- High-level module mapping from upstream UDT C++ files to pure Dart libraries.
- UdtPollEvent
-
Mirrors UDT epoll bitmask flags (
UDT_EPOLL_IN|OUT|ERR) with typed Dart. - UdtSocketOptionApplyStatus
- UdtSocketOptionKey
- Typed socket-option keys used by UdtSocketOptionPlanner.
Extensions
Functions
-
buildUdtDualStackMatrix(
) → List< UdtDualStackMatrixRow> - Generates deterministic dual-stack planning matrix without network access.
-
generateDeterministicUdtValues(
{required int seed, required int count, required int max}) → Iterable< int> - Deterministic helper used by tests to exercise wraparound properties without external fuzzing dependencies.