Win32 API 日本語リファレンス
ホームNetworkManagement.IpHelper › TCP_SOFT_ERROR

TCP_SOFT_ERROR

列挙型
基底型i4

メンバー 10

名前10進16進説明
TcpErrorNone00x0ソフトエラーは発生していません。
TcpErrorBelowDataWindow10x1セグメント内のすべてのデータが 送信未確認 (SND.UNA) シーケンス番号より下にあります。このソフトエラーは、キープアライブおよびゼロウィンドウプローブでは正常な状態です。
TcpErrorAboveDataWindow20x2セグメント内の一部のデータが 送信ウィンドウ (SND.WND) サイズを超えています。このソフトエラーは、実装のバグ、または攻撃の可能性を示します。
TcpErrorBelowAckWindow30x3SND.UNA シーケンス番号より下の ACK を受信しました。このソフトエラーは、 復路で ACK の順序が入れ替わっていることを示します。
TcpErrorAboveAckWindow40x4送信していないデータに対する ACK を受信しました。 このソフトエラーは、実装のバグ、または攻撃の可能性を示します。
TcpErrorBelowTsWindow50x5セグメントの Timestamp Echo Reply (TSecr) が、 現在の TS.Recent (セグメント送信時に TSecr へエコーされるタイムスタンプ) より古い値です。このエラーは、IETF が RFC 1323 で定義している TCP Timestamps オプション (TSopt) を使用する TCP 接続に適用されます。詳細については、http://www.ietf.org/rfc/rfc1323.txt を参照してください。このソフトエラーは、Protect Against Wrapped Sequences numbers (PAWS) メカニズムがネットワークによって並べ替えられたデータを検出するという、まれなケースでは正常な状態です。
TcpErrorAboveTsWindow60x6セグメントの TSecr が、 現在の TS.Recent より新しい値です。このソフトエラーは、実装のバグ、または 攻撃の可能性を示します。
TcpErrorDataChecksumError70x7正しくない TCP チェックサムを受信しました。この値は 本質的に信頼性が低い点に注意してください。接続の識別に使用される ヘッダーフィールド自体が破損している可能性があるためです。
TcpErrorDataLengthError80x8

データ長エラーが発生しました。

この値は、TCP Extended Statistics MIB に関する IETF ドラフト RFC では定義されていません。

TcpErrorMaxSoftError90x9TCP_SOFT_ERROR_STATE 列挙型で取り得る最大値です。これは、TCP 接続のソフトエラーの理由として有効な値ではありません。

公式ドキュメント

TCP_SOFT_ERROR 列挙型は、TCP 接続で記録された、致命的でないエラー (ソフトエラー) の理由を定義します。

解説(Remarks)

TCP_SOFT_ERROR 列挙型は、Windows Vista 以降で定義されています。

この列挙型の値は、TCP Extended Statistics MIB に関する IETF ドラフト RFC で定義されています。詳細については、http://www.ietf.org/rfc/rfc4898.txt を参照してください。

出典・ライセンス: 上記「公式ドキュメント」の内容は Microsoft の Win32 API ドキュメント(MicrosoftDocs/sdk-api)を日本語に翻訳・改変したものです。© Microsoft Corporation. CC BY 4.0 で提供。
Microsoft 公式リファレンス: 英語 (en-us) · 日本語 (ja-jp) · 原文ソース (GitHub)

各言語での定義

列挙メンバーの定義。HSP タブは #define global(値は16進)。

typedef enum TCP_SOFT_ERROR : int {
    TcpErrorNone = 0,
    TcpErrorBelowDataWindow = 1,
    TcpErrorAboveDataWindow = 2,
    TcpErrorBelowAckWindow = 3,
    TcpErrorAboveAckWindow = 4,
    TcpErrorBelowTsWindow = 5,
    TcpErrorAboveTsWindow = 6,
    TcpErrorDataChecksumError = 7,
    TcpErrorDataLengthError = 8,
    TcpErrorMaxSoftError = 9
} TCP_SOFT_ERROR;
public enum TCP_SOFT_ERROR : int
{
    TcpErrorNone = 0,
    TcpErrorBelowDataWindow = 1,
    TcpErrorAboveDataWindow = 2,
    TcpErrorBelowAckWindow = 3,
    TcpErrorAboveAckWindow = 4,
    TcpErrorBelowTsWindow = 5,
    TcpErrorAboveTsWindow = 6,
    TcpErrorDataChecksumError = 7,
    TcpErrorDataLengthError = 8,
    TcpErrorMaxSoftError = 9,
}
Public Enum TCP_SOFT_ERROR As Integer
    TcpErrorNone = 0
    TcpErrorBelowDataWindow = 1
    TcpErrorAboveDataWindow = 2
    TcpErrorBelowAckWindow = 3
    TcpErrorAboveAckWindow = 4
    TcpErrorBelowTsWindow = 5
    TcpErrorAboveTsWindow = 6
    TcpErrorDataChecksumError = 7
    TcpErrorDataLengthError = 8
    TcpErrorMaxSoftError = 9
End Enum
import enum

class TCP_SOFT_ERROR(enum.IntEnum):
    TcpErrorNone = 0
    TcpErrorBelowDataWindow = 1
    TcpErrorAboveDataWindow = 2
    TcpErrorBelowAckWindow = 3
    TcpErrorAboveAckWindow = 4
    TcpErrorBelowTsWindow = 5
    TcpErrorAboveTsWindow = 6
    TcpErrorDataChecksumError = 7
    TcpErrorDataLengthError = 8
    TcpErrorMaxSoftError = 9
// TCP_SOFT_ERROR
pub const TcpErrorNone: i32 = 0;
pub const TcpErrorBelowDataWindow: i32 = 1;
pub const TcpErrorAboveDataWindow: i32 = 2;
pub const TcpErrorBelowAckWindow: i32 = 3;
pub const TcpErrorAboveAckWindow: i32 = 4;
pub const TcpErrorBelowTsWindow: i32 = 5;
pub const TcpErrorAboveTsWindow: i32 = 6;
pub const TcpErrorDataChecksumError: i32 = 7;
pub const TcpErrorDataLengthError: i32 = 8;
pub const TcpErrorMaxSoftError: i32 = 9;
// TCP_SOFT_ERROR
const (
	TcpErrorNone int32 = 0
	TcpErrorBelowDataWindow int32 = 1
	TcpErrorAboveDataWindow int32 = 2
	TcpErrorBelowAckWindow int32 = 3
	TcpErrorAboveAckWindow int32 = 4
	TcpErrorBelowTsWindow int32 = 5
	TcpErrorAboveTsWindow int32 = 6
	TcpErrorDataChecksumError int32 = 7
	TcpErrorDataLengthError int32 = 8
	TcpErrorMaxSoftError int32 = 9
)
const
  TcpErrorNone = 0;
  TcpErrorBelowDataWindow = 1;
  TcpErrorAboveDataWindow = 2;
  TcpErrorBelowAckWindow = 3;
  TcpErrorAboveAckWindow = 4;
  TcpErrorBelowTsWindow = 5;
  TcpErrorAboveTsWindow = 6;
  TcpErrorDataChecksumError = 7;
  TcpErrorDataLengthError = 8;
  TcpErrorMaxSoftError = 9;
// TCP_SOFT_ERROR
pub const TcpErrorNone: i32 = 0;
pub const TcpErrorBelowDataWindow: i32 = 1;
pub const TcpErrorAboveDataWindow: i32 = 2;
pub const TcpErrorBelowAckWindow: i32 = 3;
pub const TcpErrorAboveAckWindow: i32 = 4;
pub const TcpErrorBelowTsWindow: i32 = 5;
pub const TcpErrorAboveTsWindow: i32 = 6;
pub const TcpErrorDataChecksumError: i32 = 7;
pub const TcpErrorDataLengthError: i32 = 8;
pub const TcpErrorMaxSoftError: i32 = 9;
const
  TcpErrorNone* = 0
  TcpErrorBelowDataWindow* = 1
  TcpErrorAboveDataWindow* = 2
  TcpErrorBelowAckWindow* = 3
  TcpErrorAboveAckWindow* = 4
  TcpErrorBelowTsWindow* = 5
  TcpErrorAboveTsWindow* = 6
  TcpErrorDataChecksumError* = 7
  TcpErrorDataLengthError* = 8
  TcpErrorMaxSoftError* = 9
enum TCP_SOFT_ERROR : int {
    TcpErrorNone = 0,
    TcpErrorBelowDataWindow = 1,
    TcpErrorAboveDataWindow = 2,
    TcpErrorBelowAckWindow = 3,
    TcpErrorAboveAckWindow = 4,
    TcpErrorBelowTsWindow = 5,
    TcpErrorAboveTsWindow = 6,
    TcpErrorDataChecksumError = 7,
    TcpErrorDataLengthError = 8,
    TcpErrorMaxSoftError = 9,
}
#define global TcpErrorNone              0x0
#define global TcpErrorBelowDataWindow   0x1
#define global TcpErrorAboveDataWindow   0x2
#define global TcpErrorBelowAckWindow    0x3
#define global TcpErrorAboveAckWindow    0x4
#define global TcpErrorBelowTsWindow     0x5
#define global TcpErrorAboveTsWindow     0x6
#define global TcpErrorDataChecksumError 0x7
#define global TcpErrorDataLengthError   0x8
#define global TcpErrorMaxSoftError      0x9