Documentation ¶
Overview ¶
Package quic は、 QUIC を使用したトランスポートを提供するパッケージです。
Index ¶
- Constants
- func Dial(c transport.DialConfig) (transport.Transport, error)
- func DialWithConfig(c transport.DialConfig, cc DialerConfig) (transport.Transport, error)
- type Config
- type Dialer
- type DialerConfig
- type NegotiationParams
- type Transport
- func (t *Transport) AsUnreliable() (transport.UnreliableTransport, bool)
- func (t *Transport) Close() error
- func (t *Transport) Name() transport.Name
- func (t *Transport) NegotiationParams() transport.NegotiationParams
- func (t *Transport) Read() ([]byte, error)
- func (t *Transport) RxBytesCounterValue() uint64
- func (t *Transport) TxBytesCounterValue() uint64
- func (t *Transport) Write(m []byte) error
- func (t *Transport) WriteUnreliable(m []byte) error
Constants ¶
View Source
const (
DefaultQueueSize = 32
)
Config のデフォルト値は以下のように定義されています。
Variables ¶
This section is empty.
Functions ¶
func Dial ¶
func Dial(c transport.DialConfig) (transport.Transport, error)
Dialは、デフォルト設定を使ってトランスポート接続を開始します。
func DialWithConfig ¶
func DialWithConfig(c transport.DialConfig, cc DialerConfig) (transport.Transport, error)
DialWithConfigは、トランスポート接続を開始します。
Types ¶
type Config ¶
type Config struct { // Connection は、QUICのコネクションです。 // このフィールドを nil にすることはできません。 Connection quic.Connection // QueueSize は、トランスポートとメッセージをやり取りする際のメッセージキューの長さです。 // 0 に設定された場合は、 DefaultQueueSize の値が使用されます。 QueueSize int // CompressConfig は、圧縮に関する設定です。 CompressConfig compress.Config // ReadBufferExpiry は DATAGRAMメッセージのバッファ有効期限です。 // 0 に設定された場合は、DefaultReadBufferExpiryが使用されます。 ReadBufferExpiry time.Duration // NegotiationParams は、このトランスポートで事前ネゴシエーションされたパラメーターです。 NegotiationParams NegotiationParams }
Config は、トランスポートに関する設定です。
type DialerConfig ¶
type DialerConfig struct { // QueueSize は、トランスポートとメッセージをやり取りする際のメッセージキューの長さです。 // 0 に設定された場合は、 DefaultQueueSize の値が使用されます。 QueueSize int // TLSConfigは、TLS接続の設定です。 // // TLSConfig.NextProtosは必ず、`iscp` に上書きします。 TLSConfig *tls.Config }
DialerConfigは、Dialerの設定です。
type NegotiationParams ¶
type NegotiationParams struct {
transport.NegotiationParams
}
NegotiationParamsは、トランスポートネゴシエーションのパラメータです。
func (*NegotiationParams) Marshal ¶
func (p *NegotiationParams) Marshal() ([]byte, error)
Marshalは、ネゴシエーションパラメータをQUIC用にバイナリエンコードします。
func (*NegotiationParams) Unmarshal ¶
func (p *NegotiationParams) Unmarshal(b []byte) error
Unmarshalは、ネゴシエーションパラメータをQUIC用にバイナリデコードします。
type Transport ¶
type Transport struct {
// contains filtered or unexported fields
}
Transportは、QUICのトランスポートです。
func (*Transport) AsUnreliable ¶
func (t *Transport) AsUnreliable() (transport.UnreliableTransport, bool)
AsUnreliableは、トランスポートをUnreliableとして返却します。
トランスポートにQUICを選択した場合、信頼性のないトランスポートとしてはQUICDatagramが使用されます。
func (*Transport) NegotiationParams ¶
func (t *Transport) NegotiationParams() transport.NegotiationParams
NegotiationParamsは、ネゴシエーションパラメータを返却します。
func (*Transport) RxBytesCounterValue ¶
RxBytesCounterValueは、読み込んだ総バイト数を返却します。
func (*Transport) TxBytesCounterValue ¶
TxBytesCounterValueは、書き込んだ総バイト数を返却します。
func (*Transport) WriteUnreliable ¶
WriteUnreliableは、信頼性のないトランスポートへメッセージを読み込みます。
QUICの場合QUICDataGramを使用し、メッセージを書き込みます。
Click to show internal directories.
Click to hide internal directories.