Binding onto interface
It seems like the binding onto an interface is broken. I can specify the interface alias through compartment but it allows traffic over other interfaces because they're in the same compartment (adding new compartments is currently broken using netsh).
Thanks for the feedback Matthew. Yeah, I can see how that's confusing. I tried to 'help' with this help text :)
"- specifies the interface alias of the compartment to use for all sockets"
The -compartment param isn't for actually binding to a specific interface, but to the compartment which that interface is apart of. I have another option in another fork (ctsperf_updates) where I expose -ifIndex, where you can restrict all traffic over a specific IP interface.
The reason why we ended up exposing compartments through an interface alias, versus the raw compartment ID, is that the customers who asked for it at the time found that was much simpler in actual deployment.
Thanks!
I am trying to use the tool and run it remotely using powershell to automate network performance test among a lot of servers. Unfortunately, I am not able to do so...Although I see that a ctstraffic process exists on the sender side, I am not able to see anything on the receiver side...it looks like the tool needs a cmd or powershell windows to run correctly...IS there anyway to run it remotely and out of an interactive sessions ? would be great to do so and get an objetc out of it with the different performance measure.
Thanks
I am trying to use the tool and run it remotely using powershell to automate network performance test among a lot of servers. Unfortunately, I am not able to do so...Although I see that a ctstraffic process exists on the sender side, I am not able to see anything on the receiver side...it looks like the tool needs a cmd or powershell windows to run correctly...IS there anyway to run it remotely and out of an interactive sessions ? would be great to do so and get an objetc out of it with the different performance measure.Thanks
Hi there. We have many clients who launch ctsTraffic from Powershell - it definitely does not need a cmd shell :)
If the receiver is not receiving anything, the most common configuration issue is the firewall does not have an ALLOW rule to allow inbound traffic. I would recommend creating an ALLOW rule based off the destination TCP port (by default it's 4444). Can you try that and verify?
Thanks!
Great! The tool works between the servers I try to test when running from a powershell Window... However, I ma trying to run it through Invoke-Command... If you have such an exemple, I would be glad to have the script.
Thanks a lot.
Jerome
Outlook for Androidhttps://aka.ms/ghei36 herunterladen
From: Keith Horton [email protected] Sent: Thursday, October 25, 2018 8:51:19 PM To: Microsoft/ctsTraffic Cc: jsporbert; Comment Subject: Re: [Microsoft/ctsTraffic] Binding onto interface (#2)
I am trying to use the tool and run it remotely using powershell to automate network performance test among a lot of servers. Unfortunately, I am not able to do so...Although I see that a ctstraffic process exists on the sender side, I am not able to see anything on the receiver side...it looks like the tool needs a cmd or powershell windows to run correctly...IS there anyway to run it remotely and out of an interactive sessions ? would be great to do so and get an objetc out of it with the different performance measure.
Thanks
Hi there. We have many clients who launch ctsTraffic from Powershell - it definitely does not need a cmd shell :)
If the receiver is not receiving anything, the most common configuration issue is the firewall does not have an ALLOW rule to allow inbound traffic. I would recommend creating an ALLOW rule based off the destination TCP port (by default it's 4444). Can you try that and verify?
Thanks!
— You are receiving this because you commented. Reply to this email directly, view it on GitHubhttps://eur03.safelinks.protection.outlook.com/?url=https%3A%2F%2Fgithub.com%2FMicrosoft%2FctsTraffic%2Fissues%2F2%23issuecomment-433164758&data=02%7C01%7C%7C6bcb3d7faa144dcadabd08d63aaadaef%7C84df9e7fe9f640afb435aaaaaaaaaaaa%7C1%7C0%7C636760902815893507&sdata=6lgl735FR4bwsFqB7%2Ff6U8uaQtG6%2Bjoe1zC59BTUThk%3D&reserved=0, or mute the threadhttps://eur03.safelinks.protection.outlook.com/?url=https%3A%2F%2Fgithub.com%2Fnotifications%2Funsubscribe-auth%2FAWGHCLCPtZ5XImUXCA9fIX0-q0w6pc1lks5uoggngaJpZM4PuCVK&data=02%7C01%7C%7C6bcb3d7faa144dcadabd08d63aaadaef%7C84df9e7fe9f640afb435aaaaaaaaaaaa%7C1%7C0%7C636760902815893507&sdata=%2B3Yi%2FvKMFriJBQ%2BPN66MphzPRgRnxP1%2BhAbidfVBAU0%3D&reserved=0.
Oh, now I see the issue. Yes, Invoke-Command requires a "script block" (note: I'm not a Powershell expert :)
This works (creating a script block with the curly braces):
Invoke-Command {.\ctsTraffic.exe -Listen:* -ServerExitLimit:8 -consoleverbosity:1 -statusfilename:test.log}
Thanks!
Exactly what I'm doing but I'll give it a try again ??
Outlook for Androidhttps://aka.ms/ghei36 herunterladen
From: Keith Horton [email protected] Sent: Thursday, October 25, 2018 10:40:08 PM To: Microsoft/ctsTraffic Cc: jsporbert; Comment Subject: Re: [Microsoft/ctsTraffic] Binding onto interface (#2)
Oh, now I see the issue. Yes, Invoke-Command requires a "script block" (note: I'm not a Powershell expert :)
This works (creating a script block with the curly braces):
Invoke-Command {.\ctsTraffic.exe -Listen:* -ServerExitLimit:8 -consoleverbosity:1 -statusfilename:test.log}
Thanks!
— You are receiving this because you commented. Reply to this email directly, view it on GitHubhttps://eur04.safelinks.protection.outlook.com/?url=https%3A%2F%2Fgithub.com%2FMicrosoft%2FctsTraffic%2Fissues%2F2%23issuecomment-433197776&data=02%7C01%7C%7C6f87d424737341a185a208d63aba0e6c%7C84df9e7fe9f640afb435aaaaaaaaaaaa%7C1%7C0%7C636760968102723871&sdata=Wb9vF8XQrFnh%2FC77Wvi0jwwXiv9qZKKX8e2qpaKAhLE%3D&reserved=0, or mute the threadhttps://eur04.safelinks.protection.outlook.com/?url=https%3A%2F%2Fgithub.com%2Fnotifications%2Funsubscribe-auth%2FAWGHCAMNOQchNddtIS396rEG6lELSDquks5uoiGogaJpZM4PuCVK&data=02%7C01%7C%7C6f87d424737341a185a208d63aba0e6c%7C84df9e7fe9f640afb435aaaaaaaaaaaa%7C1%7C0%7C636760968102723871&sdata=YMdOtoWJPywLht9rbm8qmXXrvbkRqkWjlUpafbRkK1g%3D&reserved=0.
Hi there. Can you copy here the command line you are giving? What are you seeing on the server side? Do you see connections working from the client side?
Thanks!
Hi Keith, Sorry I was on Holiday...Hard to copy past now as the script stayed at my customer but this is what I tried to achieved...I want inside one script to test network performance among several servers (a 10 nodes cluster indeed)..So I need to run those tests in parallel. What I did so far is I created a script for the receiver side and one for the sender side. Both scripts take an IP address as argument (the receiver one) and will send traffic on the standard 4444 port. To be able to run the test in parallel, I use the invoke-command command with the as-job parameter...This is where it is not working at all althoug seems to works well in an interactive PS shell.
Thanks. Without seeing the script, I don't know what the issue might have been. But you shouldn't need to start them up in parallel - you can add as many -target options as you want on the client. So one client can target all servers in a single run :)
That will round-robin between names (and/or round-robin between the resolved IP addresses)
Thanks!