eq2go/internal/udp/config.go

32 lines
682 B
Go

package udp
import "time"
// Configuration constants
const (
DefaultMTU = 1400
DefaultWindowSize = 256
DefaultRetryAttempts = 5
DefaultTimeout = 30 * time.Second
RetransmitTimeout = 3 * time.Second
KeepAliveInterval = 10 * time.Second
)
// Config holds configuration for reliable UDP connections
type Config struct {
MTU int
WindowSize uint16
RetryAttempts int
Timeout time.Duration
}
// DefaultConfig returns a default configuration
func DefaultConfig() *Config {
return &Config{
MTU: DefaultMTU,
WindowSize: DefaultWindowSize,
RetryAttempts: DefaultRetryAttempts,
Timeout: DefaultTimeout,
}
}