demirten / twamp-gui Goto Github PK
View Code? Open in Web Editor NEWCross platform twamp client and responder with Qt QML backend
License: GNU General Public License v2.0
Cross platform twamp client and responder with Qt QML backend
License: GNU General Public License v2.0
Fraction part of the time is not accurate as you take the time in milisec and multiply or divide by 4294.967296 which results in values 0-4,294,967 (multiply) or values > 1000 when dividing which is not the full 0-2^32 range nor mili values > 1000
My suggestion is to change:
Additionally in twamp_time TwampCommon::getTwampTime there are 2 calls to QDateTime::currentMSecsSinceEpoch(), as time changes between calls, I propose to make a single call
the suggestion is as follows:
struct twamp_time TwampCommon::getTwampTime()
{
struct twamp_time t;
qint64 tmp_time = QDateTime::currentMSecsSinceEpoch();
t.seconds = tmp_time / 1000 + TWAMP_BASE_TIME_OFFSET;
t.fraction = (tmp_time % 1000) * TWAMP_FLOAT_DENOM;
return t;
}
From email exchange:
mikeshev says:
The program seems to be leaking a significant amount of memory. After leaving TWAMP Responder up for about a day (on windows) it leaks about 500M of memory. If I clear logs or restart the process the memory goes back down to about 20MB (measured by windows Task Manager). Do you know of any fix for this? I do not have a Qt5 development environment,
Your Reply:
If GUI is not a problem for you, you can remove the pushing logs to the QT/QML interface. You can open an issue on github project, I can have a look at it if I can found a free time for this.
mikeshev:
I don't care that responses are shown in the GUI. At this point I'm more interested in have the program run for a longer period of time (at least 1 month - after which I reboot the Windows machine for patches anyways).
After I have checked your website,
https://demirten.github.io/twamp-gui/
Could you please help me for creating android client for TWAMP
Hi,
I am using the apk version of twamp client (phone with LTE 4G network) and try to test with twamp responder that setup in a public ip azure virture machine. Everytime i run i get the following result from the client app:
full pcap file in azure server
twamp-20201021.zip
May i know how can i resolve this situation?
Thank you
Hi there
I installed "TwampGuiInstaller-1.0.5" on Win 7 Pro SP1 but when I open twamp-responder it doesn't work properly, the windows doesn't show any information and just appear the border of the window but not buttons, logs or any other info. I have tried in others computer and it's work, so I suspect that can be a specific configuration on Windows (maybe), unfortunately I can not use the computer in which its works; and more than that, if great to know the issue in order to help to anothers.
Hi @ALL
I Setup Client in Public IP xx.xxx.xx.xx and enable the port forwarding on that IP, And I setup the responder on different IP xx.xx.xx.xx.
When I am trying to establish the connection TCP handshake is happen after that UDP packets are not going, it show error "No response receive".
Thanks for this great tool!
I would like to use TWAMP client/responder via scripts, so a CLI based version would be nice for this purpose.
In particular, I struggled a little bit until I found out, it was firewall related.
I needed to
40000
and 40001
(!) I only figured this out, because i saw this port being used in screenshots on the websiteAnother helpful note would be to clarify that the port specified in the Twamp Client has to be the same port as twamp control listen port
and twamp light udp listen port
in Twamp Responder
But thank you for this tool, it works nicely so far (made use of it in a small household. I do have full admin control over my small local area network, so at the end of the day, all problems setting it up could be solved). Great job! :-)
According to RFC5357 the padding handling with TWAMP-Test messages should be:
Note that the Session-Reflector Test packet formats are larger than the Sender's formats. The Session-Reflector SHOULD reduce the length of the Sender's Packet Padding to achieve equal IP packet payload lengths in each direction of transmission, when sufficient padding is present. The Session-Reflector MAY re-use the Sender's Packet Padding (since the requirements for padding generation are the same for each), and in this case the Session-Reflector SHOULD truncate the padding such that the highest-number octets are discarded.
To achieve this change line 368 in twamp_responder_worker.cpp to:
int payload = 0;
if (rc > (int)sizeof(struct twamp_message_reflector_unathenticated))
payload = rc - (int)sizeof(struct twamp_message_reflector_unathenticated);
Hi I cant able to open Twamp client in windows IPv6 machine after installing.
Can you please help me, how to compile your repository?
I want to add few features to your application.
If sender and receiver ports are different in Request-Session message the responder will try to reflect TWAMP-Test packets to the receiver port of the Session-Sender (should be sender port). To fix this change lines 156-157 in twamp_responder_worker.cpp to:
client->testUdpPort = qFromBigEndian(session->sender_port);
sendAcceptSession(client, qFromBigEndian(session->receiver_port));
A declarative, efficient, and flexible JavaScript library for building user interfaces.
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. ๐๐๐
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google โค๏ธ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.