2013-07-24 61 views
1

在我建立使用Adobe AIR,基於UDP協議的簡單的服務器客戶端應用程序(Windows)。我想要實現的是測試我的應用程序在單個PC上的網絡干擾(延遲,數據包丟失,數據包重新排序)下的工作方式。如何模擬延遲以及客戶端和服務器之間的其他網絡干擾同一臺PC

有大量的網絡干擾的模擬程序,但是看起來他們都在做模擬兩臺PC之間的網絡干擾,這不是我所需要的。

回答

0

如果您使用的是Windows,這是不是很可能創造在本地主機等待一些延遲。我在今年冬天提出這個問題,這就是我解決問題的方法。

所有延遲邏輯會在你的AS3代碼。在那一刻,你收到的某些數據(套接字數據的進展情況),您創建所需的延遲一個新的定時器(或使用現有的一個),並與Timer.COMPLETE事件傳遞接收套接字數據。當您的計時器觸發時,您可以像使用它的數據一樣使用它的數據 - 您可以調用一些所需的函數,處理它並根據需要執行任何操作。你也可以使用setTimeout而不是Timer,它並不重要。您也可以通過不創建定時器來添加一些隨機數據包丟失,因此不會有數據通過。你也可以使用隨機定時器時間,這樣一些數據包將被重新排序。

因爲實現真的取決於你現在已經擁有我不會寫任何代碼。但是,我希望這個小提示將幫助你:)

+0

這是我打算如何做排在首位,但我只需要知道,如果有一種方法與已經取得外部應用程序做它,因爲它最初出現有大量的可用。謝謝你的提示。 – UnfriendlyNeighbour

相關問題