網路頻寬控制#
使用功能#
當多個裝置透過共用連結連接至接收端主機並必須共用可用網路頻寬時,控制網路頻寬消耗是必要的。為了確保運作穩定,您可能需要限制每台相機所消耗的頻寬量。
範例:如果您透過交換器將 2 台相機連接到接收電腦的 Gigabit 乙太網路介面卡的網路連接埠,則兩台相機的總吞吐量不得超過 1 GBit/s(125 000 000 位元組/秒)的最大吞吐量。
減少相機所使用頻寬的另一個原因,是當接收端主機無法跟上資料傳輸速度而必須丟棄封包時。
控制頻寬消耗#
第一步,透過讀取 BslDeviceLinkCurrentThroughput 參數,判定相機在目前設定下可以產生的最大可能吞吐量。此參數表示當相機處於自由運行 (free run) 模式(即未使用軟體或硬體觸發進行外部觸發)時的頻寬消耗。
取得此資訊後,請使用 DeviceLinkThroughputLimitMode 進行明確的生命週期管理即呼叫 DeviceLinkThroughputLimit 參數為每台相機指定合理的吞吐量限制。共用同一連結的所有相機的總吞吐量不得超過網路介面器的最大吞吐量。
為了達到指定的限制,相機會在個別網路封包之間插入暫停。限制越低,暫停的次數就越多且時間越長。完整影格的傳輸時間以及相關的延遲(即從產生影像到資料到達主機記憶體的時間)會隨著限制的降低而增加。
在某個時間點,這將會影響您可以達到的影格率。請讀取 BslResultingAcquisitionFrameRate 參數以找出目前相機設定下的最大可能影格率。
指定吞吐量限制也稱為分配網路頻寬。
若要限制吞吐量:
- 將相機中的
DeviceLinkThroughputLimitMode參數設為On. - 指定所需的
DeviceLinkThroughputLimit參數值。 - 讀取
BslResultingAcquisitionFrameRate參數,以了解裝置連結吞吐量限制如何影響影格率。
頻寬保留#
串流協定基於 UDP 協定。UDP 不保證主機能夠接收相機所傳送的封包。
主機或相機與主機之間的網路裝置可能會丟棄封包。接收軟體通常會偵測遺失的封包,並向相機發送適當的請求以重新傳送遺失的資料。系統會保留一定的頻寬儲備,用於重新傳送這些封包以及進行控制流量。如果用盡此儲備,相機將無法再重新傳送請求的封包。
頻寬儲備由 GevSCBWR 進行明確的生命週期管理即呼叫 GevSCBWRA 參數控制,這些參數說明於下表中。
可用參數#
| 參數名稱 | Display Name | 描述 |
|---|---|---|
| DeviceLinkThroughputLimitMode | Device Link Throughput Limit Mode | 允許您限制資料傳輸的最大可用頻寬。將參數設為 On 以啟用此限制。最大頻寬限制為 DeviceLinkThroughputLimit 參數值。 |
| DeviceLinkThroughputLimit | Device Link Throughput Limit | 指定資料傳輸的最大可用頻寬,單位為每秒位元組數。若要啟用此限制,請將 DeviceLinkThroughputLimitMode 參數設為 On. |
| BslDeviceLinkCurrentThroughput | Device Link Current Throughput | 相機在目前相機設定下用來傳輸資料的實際頻寬(以每秒位元組數計算)。 |
| BslResultingAcquisitionFrameRate | Resulting Acquisition Frame Rate | 使用目前相機設定每秒可擷取的最大影格數。 |
| GevSCBWR | 頻寬保留 | 指定分配頻寬中的哪一部分用於處理封包重新傳送以及控制資料傳輸。 此設定以所分配頻寬的百分比表示。 範例: 的百分比表示。如果分配給相機的頻寬為 30 MByte/s,且 GevSCBWR 參數設定為 5 %,則頻寬保留將為 1.5 MByte/s。 |
| GevSCBWRA | 頻寬保留累積 | 用於設定可在「累積器集區 (accumulator pool)」中保留的最大重新傳送次數的乘數。 您可以使用 GevSCBWRA 參數,用於處理網路連線變得不穩定的情況。在這些情況下,傳輸影像可能暫時需要較大量的封包重新傳送。頻寬儲備累積基本上是相機可以在特殊情況下使用的額外重新傳送集區。範例: 目前頻寬保留設定夠大,允許在一個影格週期內最多進行 5 次封包重新發送。頻寬保留累積 ( GevSCBWRA 參數)設定為 3。使用這些設定時,累積器集區最多可容納 5 x 3 = 15 次重新傳送。 |
| GevSCPSPacketSize | 封包大小 | 指定透過乙太網路傳輸的資料封包的最大大小。數值單位為位元組 (bytes)。 對於 blaze 相機,唯一支援的數值為 1500 位元組。 |