@prefix schema: <https://schema.org/> .
@prefix skos: <http://www.w3.org/2004/02/skos/core#> .
@prefix rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#> .
@prefix ks: <https://comcomponent.com/vocab/> .

<https://comcomponent.com/blog/gige-usb3-vision-camera-frame-drops-windows/#article>
    schema:about <https://comcomponent.com/knowledge/frame-drop/>, <https://comcomponent.com/knowledge/gige-vision/>, <https://comcomponent.com/knowledge/usb3-vision/> ;
    schema:mentions <https://comcomponent.com/knowledge/gvcp/>, <https://comcomponent.com/knowledge/gige-vision-packet-resend/>, <https://comcomponent.com/knowledge/packet-loss/>, <https://comcomponent.com/knowledge/jumbo-frame/>, <https://comcomponent.com/knowledge/nic-receive-buffers/>, <https://comcomponent.com/knowledge/inter-packet-delay/>, <https://comcomponent.com/knowledge/interrupt-moderation/>, <https://comcomponent.com/knowledge/nic-advanced-properties/>, <https://comcomponent.com/knowledge/usb-bulk-transfer/>, <https://comcomponent.com/knowledge/usb-selective-suspend/>, <https://comcomponent.com/knowledge/power-plan/> .

<https://comcomponent.com/knowledge/frame-drop/> a skos:Concept ;
    skos:prefLabel "フレームドロップ"@ja ;
    skos:definition "カメラが撮影・送信した画像(フレーム)の一部またはすべてが、受信側のアプリに正しく届かないこと。"@ja ;
    skos:altLabel "Dropped frames" ;
    skos:altLabel "フレーム落ち"@ja ;
    skos:altLabel "画像の取りこぼし"@ja .

<https://comcomponent.com/knowledge/gige-vision/> a skos:Concept ;
    skos:prefLabel "GigE Vision"@ja ;
    skos:definition "Ethernetでカメラの制御と画像の送信を行うマシンビジョン向けのインターフェース規格。制御にGVCP、画像の送信にGVSPというUDP上のプロトコルを使う。"@ja ;
    skos:altLabel "GigE Vision規格"@ja ;
    ks:uses <https://comcomponent.com/knowledge/gvcp/> .

<https://comcomponent.com/knowledge/usb3-vision/> a skos:Concept ;
    skos:prefLabel "USB3 Vision"@ja ;
    skos:definition "USB 3.0でカメラの制御と画像の送信を行うマシンビジョン向けのインターフェース規格。画像はバルク転送のエンドポイントで送る。"@ja ;
    skos:altLabel "U3V" ;
    ks:uses <https://comcomponent.com/knowledge/usb-bulk-transfer/> .

<https://comcomponent.com/knowledge/packet-loss/> a skos:Concept ;
    skos:prefLabel "パケットロス"@ja ;
    skos:definition "送信されたパケットが途中の経路で失われ、受信側に届かなくなる現象である。"@ja ;
    skos:altLabel "パケット損失"@ja .

<https://comcomponent.com/knowledge/usb-selective-suspend/> a skos:Concept ;
    skos:prefLabel "USBセレクティブサスペンド"@ja ;
    skos:definition "アイドル状態のUSB機器を低消費電力状態に入れるWindowsの電源管理機能。復帰に時間がかかるため初回応答の遅延の原因になり得る。"@ja ;
    skos:altLabel "USB Selective Suspend" ;
    ks:configuredBy <https://comcomponent.com/knowledge/power-plan/> .

<https://comcomponent.com/knowledge/power-plan/> a skos:Concept ;
    skos:prefLabel "Power plan(電源プラン)"@ja ;
    skos:definition "powercfgで確認・切り替えできる、BalancedやHigh performanceなどの従来型のWindows電源プラン。"@ja ;
    skos:altLabel "電源プラン"@ja ;
    skos:altLabel "Balanced/High performance" .

<https://comcomponent.com/knowledge/gvcp/> a skos:Concept ;
    skos:prefLabel "GVCP"@ja ;
    skos:definition "GigE Visionでカメラの制御に使うUDP上のプロトコル。受信側が欠けた画像パケットの再送を要求するコマンドもこのプロトコルで送る。"@ja ;
    skos:altLabel "GigE Vision Control Protocol" .

<https://comcomponent.com/knowledge/gige-vision-packet-resend/> a skos:Concept ;
    skos:prefLabel "パケット再送(GigE Vision)"@ja ;
    skos:definition "GigE Visionで、受信側が届かなかった画像パケットの再送をカメラに要求する仕組み。"@ja ;
    skos:altLabel "Packet Resend" ;
    skos:altLabel "PACKETRESEND" ;
    ks:uses <https://comcomponent.com/knowledge/gvcp/> .

<https://comcomponent.com/knowledge/jumbo-frame/> a skos:Concept ;
    skos:prefLabel "Jumbo Packet/Jumbo Frames"@ja ;
    skos:definition "MTU 1500を超える、標準より大きなEthernetフレーム(9000バイト前後)を使えるようにする設定。経路上のすべての機器で揃って初めて意味を持つ。"@ja ;
    skos:altLabel "Jumbo Packet" ;
    skos:altLabel "Jumbo Frames" ;
    ks:configuredBy <https://comcomponent.com/knowledge/nic-advanced-properties/> .

<https://comcomponent.com/knowledge/nic-receive-buffers/> a skos:Concept ;
    skos:prefLabel "Receive Buffers"@ja ;
    skos:definition "NICドライバーが受信に使う記述子の数を表す標準キーワード(*ReceiveBuffers)。小さすぎると高負荷時に受信バッファが尽き、大きすぎるとシステムの資源を無駄にする。"@ja ;
    skos:altLabel "*ReceiveBuffers" ;
    skos:altLabel "Receive Descriptors" ;
    skos:altLabel "受信記述子"@ja ;
    ks:configuredBy <https://comcomponent.com/knowledge/nic-advanced-properties/> .

<https://comcomponent.com/knowledge/inter-packet-delay/> a skos:Concept ;
    skos:prefLabel "Inter-Packet Delay"@ja ;
    skos:definition "GigE Visionカメラが画像パケットを送る間隔を広げるカメラ側の設定。広げるとスイッチやNICの負荷が下がる代わりに、カメラが出せる最大のフレームレートが下がる。"@ja ;
    skos:altLabel "パケット間隔"@ja .

<https://comcomponent.com/knowledge/nic-advanced-properties/> a skos:Concept ;
    skos:prefLabel "NIC詳細設定(Advancedタブ)"@ja ;
    skos:definition "デバイスマネージャーやネットワーク接続のプロパティにあるAdvanced(詳細設定)タブで構成する、NICドライバー固有の一連の設定項目群。"@ja ;
    skos:altLabel "NIC Advanced Properties" ;
    skos:altLabel "詳細設定タブ"@ja .

<https://comcomponent.com/knowledge/interrupt-moderation/> a skos:Concept ;
    skos:prefLabel "Interrupt Moderation"@ja ;
    skos:definition "割り込み頻度を抑制して、CPU負荷とレイテンシを交換する設定。高め/Adaptiveにすると CPU負荷は下がるがレイテンシは増えやすい。"@ja ;
    skos:altLabel "割り込みモデレーション"@ja ;
    skos:altLabel "Interrupt Moderation Rate" ;
    ks:configuredBy <https://comcomponent.com/knowledge/nic-advanced-properties/> .

<https://comcomponent.com/knowledge/usb-bulk-transfer/> a skos:Concept ;
    skos:prefLabel "バルク転送(USB)"@ja ;
    skos:definition "USBの転送方式の一つ。Windowsは帯域を保証して割り当てず、性能は周期転送(アイソクロナス転送・インタラプト転送)に割り当てられた帯域の残りに左右される。"@ja ;
    skos:altLabel "Bulk Transfer" ;
    skos:altLabel "USBバルク転送"@ja .

[] a rdf:Statement ;
    rdf:subject <https://comcomponent.com/knowledge/packet-loss/> ;
    rdf:predicate ks:mayCause ;
    rdf:object <https://comcomponent.com/knowledge/frame-drop/> ;
    schema:description "GigE Visionで欠けたパケットを再送で埋められないと、その画像は不完全な画像として扱われ、アプリが正しい画像として受け取れない。Baslerはパケットと画像の取りこぼしを同じ切り分けの対象として扱っている。"@ja ;
    ks:evidence <https://docs.baslerweb.com/knowledge/how-to-troubleshoot-lost-packets-or-frames-while-using-gige-cameras>, <https://docs.baslerweb.com/pylonapi/net/T_Basler_Pylon_PLStream> ;
    ks:verifiedAt "2026-11-01" ;
    ks:certainty "context-dependent" .

[] a rdf:Statement ;
    rdf:subject <https://comcomponent.com/knowledge/usb-selective-suspend/> ;
    rdf:predicate ks:mayCause ;
    rdf:object <https://comcomponent.com/knowledge/frame-drop/> ;
    schema:description "JAIは、動作していたUSB3カメラが急に画像を送らなくなり0 fpsになる症状について、WindowsがUSB3のカードを省電力の状態に切り替えたことが原因の可能性があるとし、USBセレクティブサスペンドを無効にする手順を挙げている。Microsoftはドライバー開発者向けの資料で、セレクティブサスペンドを無効にしないよう強く勧めている。"@ja ;
    ks:evidence <https://support.jai.com/hc/en-us/articles/213886049-USB3-cameras-show-0-fps-black-screen-after-few-minutes-of-acquisition>, <https://learn.microsoft.com/en-us/windows-hardware/drivers/usbcon/usb-selective-suspend> ;
    ks:verifiedAt "2026-11-01" ;
    ks:certainty "context-dependent" .

[] a rdf:Statement ;
    rdf:subject <https://comcomponent.com/knowledge/usb-selective-suspend/> ;
    rdf:predicate ks:configuredBy ;
    rdf:object <https://comcomponent.com/knowledge/power-plan/> ;
    schema:description "電源オプションで、使っている電源プランの詳細設定にある「USB設定」からセレクティブサスペンドの有効・無効を電源接続時とバッテリー時のそれぞれで設定する。"@ja ;
    ks:evidence <https://support.jai.com/hc/en-us/articles/213886049-USB3-cameras-show-0-fps-black-screen-after-few-minutes-of-acquisition> ;
    ks:verifiedAt "2026-11-01" ;
    ks:certainty "established" .

[] a rdf:Statement ;
    rdf:subject <https://comcomponent.com/knowledge/gige-vision/> ;
    rdf:predicate ks:uses ;
    rdf:object <https://comcomponent.com/knowledge/gvcp/> ;
    schema:description "GigE Visionはカメラの制御にUDP上のGVCPを使う。画像そのものはGVSPで送る。"@ja ;
    ks:evidence <https://www.wireshark.org/docs/dfref/g/gvcp.html>, <https://www.wireshark.org/docs/dfref/g/gvsp.html> ;
    ks:verifiedAt "2026-11-01" ;
    ks:certainty "established" .

[] a rdf:Statement ;
    rdf:subject <https://comcomponent.com/knowledge/gige-vision-packet-resend/> ;
    rdf:predicate ks:uses ;
    rdf:object <https://comcomponent.com/knowledge/gvcp/> ;
    schema:description "PC側は届かなかった画像パケットの再送を、GVCPのコマンドでカメラに要求する。カメラが再送コマンドに対応しているかはGVCPで確かめられる。"@ja ;
    ks:evidence <https://www.wireshark.org/docs/dfref/g/gvcp.html> ;
    ks:verifiedAt "2026-11-01" ;
    ks:certainty "established" .

[] a rdf:Statement ;
    rdf:subject <https://comcomponent.com/knowledge/gige-vision-packet-resend/> ;
    rdf:predicate ks:mitigates ;
    rdf:object <https://comcomponent.com/knowledge/packet-loss/> ;
    schema:description "Baslerのフィルタードライバーは、パケットが届かないままPacketTimeoutの時間が過ぎると再送を要求し、欠けた画像を埋める。間に合わなければ不完全な画像になり、帯域が足りないときは再送の分だけさらに帯域を使う。"@ja ;
    ks:evidence <https://docs.baslerweb.com/pylonapi/net/T_Basler_Pylon_PLStream> ;
    ks:verifiedAt "2026-11-01" ;
    ks:certainty "context-dependent" .

[] a rdf:Statement ;
    rdf:subject <https://comcomponent.com/knowledge/jumbo-frame/> ;
    rdf:predicate ks:mitigates ;
    rdf:object <https://comcomponent.com/knowledge/packet-loss/> ;
    schema:description "Baslerはパケットや画像の取りこぼしへの対策として、NICのJumbo Framesを最大にし、カメラのパケットの大きさをその値以下にすることを勧めている。カメラ・スイッチ・NICのすべてが同じ大きさに対応していないと大きなパケットは通らない。"@ja ;
    ks:evidence <https://docs.baslerweb.com/knowledge/how-to-troubleshoot-lost-packets-or-frames-while-using-gige-cameras>, <https://docs.baslerweb.com/network-configuration-(gige-cameras)> ;
    ks:verifiedAt "2026-11-01" ;
    ks:certainty "context-dependent" .

[] a rdf:Statement ;
    rdf:subject <https://comcomponent.com/knowledge/nic-receive-buffers/> ;
    rdf:predicate ks:mitigates ;
    rdf:object <https://comcomponent.com/knowledge/packet-loss/> ;
    schema:description "受信バッファが小さいNICでは、受信の多い使い方でパケットが捨てられる。MicrosoftとBaslerは受信バッファ(Receive Descriptors)を最大にすることを勧めている。"@ja ;
    ks:evidence <https://learn.microsoft.com/en-us/windows-server/networking/technologies/network-subsystem/net-sub-performance-tuning-nics>, <https://docs.baslerweb.com/knowledge/how-to-troubleshoot-lost-packets-or-frames-while-using-gige-cameras> ;
    ks:verifiedAt "2026-11-01" ;
    ks:certainty "context-dependent" .

[] a rdf:Statement ;
    rdf:subject <https://comcomponent.com/knowledge/inter-packet-delay/> ;
    rdf:predicate ks:mitigates ;
    rdf:object <https://comcomponent.com/knowledge/packet-loss/> ;
    schema:description "複数のカメラが同時に送り始めてスイッチやNICのバッファがあふれる場合に、パケットの間隔を広げると負荷が下がる。必要なフレームレートが出る範囲で広げ、最大にするとカメラの最大フレームレートが下がる。"@ja ;
    ks:evidence <https://docs.baslerweb.com/knowledge/how-to-troubleshoot-lost-packets-or-frames-while-using-gige-cameras> ;
    ks:verifiedAt "2026-11-01" ;
    ks:certainty "context-dependent" .

[] a rdf:Statement ;
    rdf:subject <https://comcomponent.com/knowledge/jumbo-frame/> ;
    rdf:predicate ks:configuredBy ;
    rdf:object <https://comcomponent.com/knowledge/nic-advanced-properties/> ;
    schema:description "WindowsではNICの詳細設定の標準キーワード*JumboPacketで構成し、Set-NetAdapterAdvancedPropertyでも変えられる。既定は1514バイトで、上限はNICによる。"@ja ;
    ks:evidence <https://learn.microsoft.com/en-us/windows-hardware/drivers/network/keywords-that-can-be-edited>, <https://learn.microsoft.com/en-us/powershell/module/netadapter/set-netadapteradvancedproperty> ;
    ks:verifiedAt "2026-11-01" ;
    ks:certainty "established" .

[] a rdf:Statement ;
    rdf:subject <https://comcomponent.com/knowledge/nic-receive-buffers/> ;
    rdf:predicate ks:configuredBy ;
    rdf:object <https://comcomponent.com/knowledge/nic-advanced-properties/> ;
    schema:description "WindowsではNICの詳細設定の標準キーワード*ReceiveBuffersで構成し、Set-NetAdapterAdvancedPropertyでも変えられる。多くの項目はアダプターを再起動するまで反映されない。"@ja ;
    ks:evidence <https://learn.microsoft.com/en-us/windows-hardware/drivers/network/keywords-that-can-be-edited>, <https://learn.microsoft.com/en-us/powershell/module/netadapter/set-netadapteradvancedproperty> ;
    ks:verifiedAt "2026-11-01" ;
    ks:certainty "established" .

[] a rdf:Statement ;
    rdf:subject <https://comcomponent.com/knowledge/interrupt-moderation/> ;
    rdf:predicate ks:configuredBy ;
    rdf:object <https://comcomponent.com/knowledge/nic-advanced-properties/> ;
    schema:description "WindowsではNICの詳細設定の標準キーワード*InterruptModerationで有効・無効を構成する。Baslerは取りこぼしの対策として無効にするか最も弱くすることを勧め、Microsoftは無効にすると遅延が減る代わりにCPUの使用量が増えるとしている。"@ja ;
    ks:evidence <https://learn.microsoft.com/en-us/windows-hardware/drivers/network/enumeration-keywords>, <https://docs.baslerweb.com/knowledge/how-to-troubleshoot-lost-packets-or-frames-while-using-gige-cameras>, <https://learn.microsoft.com/en-us/windows-server/networking/technologies/network-subsystem/net-sub-performance-tuning-nics> ;
    ks:verifiedAt "2026-11-01" ;
    ks:certainty "established" .

[] a rdf:Statement ;
    rdf:subject <https://comcomponent.com/knowledge/usb3-vision/> ;
    rdf:predicate ks:uses ;
    rdf:object <https://comcomponent.com/knowledge/usb-bulk-transfer/> ;
    schema:description "USB3 Visionは画像をバルク転送のエンドポイントで送る。バルク転送には保証された帯域が割り当てられないので、同じホストコントローラーにつながる機器と帯域を分け合う。"@ja ;
    ks:evidence <https://www.pleora.com/?p=5134>, <https://learn.microsoft.com/en-us/windows-hardware/drivers/usbcon/usb-bandwidth-allocation> ;
    ks:verifiedAt "2026-11-01" ;
    ks:certainty "established" .
