Tools to measure TCP connection speed
hi, is there any tool could measue e2e TCP connection speed? e.g. we want to measue the delay between the TCP SYN and receiving SYN ACK packet. Joe ______________________________________________________________________ Search, browse and book your hotels and flights through Yahoo! Travel. http://sg.travel.yahoo.com
Best way to do it is right after the SYN just count "one one thousand, two one thousand" until you get the ACK. This works best for RFC 1149 traffic, but is applicable for certain others as well. I don't know of any automated tool, per se. You really couldn't do it *well* on the software side. I see a few options: 1. this invalidates itself, but it is easily doable: get one of those ethernet cards that includes all stack processing, and write a simple driver that includes a timing mechanism and a logger. It invalidates itself because your real-life connection speeds would depend on the actual card you usually use, the OS, etc. ad nauseum, and you would be bypassing all of those. 2. if you are using a "free" as in open source OS, specifically as in Linux or FreeBSD, then you could write a simple kernel module that could do it. It would still be wrong--but depending on your skill it wouldn't be too wrong. 3. this might actually work for you. Check to see how many total TCP connections your OS can handle, make sure your TCP timeout is set to the default 15 minutes, then set up a simple perl script that simply starts a timer, opens sockets as fast as it can, and when it reaches the total the OS can handle it lets you know the time passed. Take that and divide by total number of connections and you get the average.... It won't be very accurate, but it will give you some kind of idea. Please forgive the humor.... --Patrick Darden -----Original Message----- From: owner-nanog@merit.edu [mailto:owner-nanog@merit.edu]On Behalf Of Joe Shen Sent: Monday, March 10, 2008 5:00 AM To: NANGO Subject: Tools to measure TCP connection speed hi, is there any tool could measue e2e TCP connection speed? e.g. we want to measue the delay between the TCP SYN and receiving SYN ACK packet. Joe ______________________________________________________________________ Search, browse and book your hotels and flights through Yahoo! Travel. http://sg.travel.yahoo.com
we do not just want to analyze e2e performance, but to monitor network performance at IP and TCP layer. We monitor end-to-end ping with smokeping, but as you know, ICMP data does not reflect application layer permance at any time. So, we set up two hosts to measure TCP permance. Is there tools like smokeping to monitoring e2e TCP connecting speed? Joe --- "Darden, Patrick S." <darden@armc.org> wrote:
Best way to do it is right after the SYN just count "one one thousand, two one thousand" until you get the ACK. This works best for RFC 1149 traffic, but is applicable for certain others as well.
I don't know of any automated tool, per se. You really couldn't do it *well* on the software side. I see a few options:
1. this invalidates itself, but it is easily doable: get one of those ethernet cards that includes all stack processing, and write a simple driver that includes a timing mechanism and a logger. It invalidates itself because your real-life connection speeds would depend on the actual card you usually use, the OS, etc. ad nauseum, and you would be bypassing all of those.
2. if you are using a "free" as in open source OS, specifically as in Linux or FreeBSD, then you could write a simple kernel module that could do it. It would still be wrong--but depending on your skill it wouldn't be too wrong.
3. this might actually work for you. Check to see how many total TCP connections your OS can handle, make sure your TCP timeout is set to the default 15 minutes, then set up a simple perl script that simply starts a timer, opens sockets as fast as it can, and when it reaches the total the OS can handle it lets you know the time passed. Take that and divide by total number of connections and you get the average.... It won't be very accurate, but it will give you some kind of idea.
Please forgive the humor....
--Patrick Darden
-----Original Message----- From: owner-nanog@merit.edu [mailto:owner-nanog@merit.edu]On Behalf Of Joe Shen Sent: Monday, March 10, 2008 5:00 AM To: NANGO Subject: Tools to measure TCP connection speed
hi,
is there any tool could measue e2e TCP connection speed?
e.g. we want to measue the delay between the TCP SYN and receiving SYN ACK packet.
Joe
______________________________________________________________________
Search, browse and book your hotels and flights through Yahoo! Travel. http://sg.travel.yahoo.com
__________________________________________________________________ Yahoo! Singapore Answers Real people. Real questions. Real answers. Share what you know at http://answers.yahoo.com.sg
Ttcp will give you what you're looking for, but it's not something you can run in the background and forget. You have to bring it up on both ends, and while it's running, it won't even pretend to try and be friendly about bandwidth usage. It'll give you a summary after it has finished transferring whatever file(s) you feed it. -----Original Message----- From: owner-nanog@merit.edu [mailto:owner-nanog@merit.edu] On Behalf Of Joe Shen Sent: Monday, March 10, 2008 11:51 AM To: NANGO Subject: RE: Tools to measure TCP connection speed we do not just want to analyze e2e performance, but to monitor network performance at IP and TCP layer. We monitor end-to-end ping with smokeping, but as you know, ICMP data does not reflect application layer permance at any time. So, we set up two hosts to measure TCP permance. Is there tools like smokeping to monitoring e2e TCP connecting speed? Joe --- "Darden, Patrick S." <darden@armc.org> wrote:
Best way to do it is right after the SYN just count "one one thousand, two one thousand" until you get the ACK. This works best for RFC 1149 traffic, but is applicable for certain others as well.
I don't know of any automated tool, per se. You really couldn't do it *well* on the software side. I see a few options:
1. this invalidates itself, but it is easily doable: get one of those ethernet cards that includes all stack processing, and write a simple driver that includes a timing mechanism and a logger. It invalidates itself because your real-life connection speeds would depend on the actual card you usually use, the OS, etc. ad nauseum, and you would be bypassing all of those.
2. if you are using a "free" as in open source OS, specifically as in Linux or FreeBSD, then you could write a simple kernel module that could do it. It would still be wrong--but depending on your skill it wouldn't be too wrong.
3. this might actually work for you. Check to see how many total TCP connections your OS can handle, make sure your TCP timeout is set to the default 15 minutes, then set up a simple perl script that simply starts a timer, opens sockets as fast as it can, and when it reaches the total the OS can handle it lets you know the time passed. Take that and divide by total number of connections and you get the average.... It won't be very accurate, but it will give you some kind of idea.
Please forgive the humor....
--Patrick Darden
-----Original Message----- From: owner-nanog@merit.edu [mailto:owner-nanog@merit.edu]On Behalf Of Joe Shen Sent: Monday, March 10, 2008 5:00 AM To: NANGO Subject: Tools to measure TCP connection speed
hi,
is there any tool could measue e2e TCP connection speed?
e.g. we want to measue the delay between the TCP SYN and receiving SYN ACK packet.
Joe
______________________________________________________________________
Search, browse and book your hotels and flights through Yahoo! Travel. http://sg.travel.yahoo.com
__________________________________________________________________ Yahoo! Singapore Answers Real people. Real questions. Real answers. Share what you know at http://answers.yahoo.com.sg
A couple of tools I use from time to time are iperf and ttcp. I'll run iperf on some host and either run ttcp to it from a router or iperf to another host. You can also run ttcp router to router. -wil On Mar 10, 2008, at 8:51 AM, Joe Shen wrote:
we do not just want to analyze e2e performance, but to monitor network performance at IP and TCP layer.
We monitor end-to-end ping with smokeping, but as you know, ICMP data does not reflect application layer permance at any time. So, we set up two hosts to measure TCP permance.
Is there tools like smokeping to monitoring e2e TCP connecting speed?
Joe
--- "Darden, Patrick S." <darden@armc.org> wrote:
Best way to do it is right after the SYN just count "one one thousand, two one thousand" until you get the ACK. This works best for RFC 1149 traffic, but is applicable for certain others as well.
I don't know of any automated tool, per se. You really couldn't do it *well* on the software side. I see a few options:
1. this invalidates itself, but it is easily doable: get one of those ethernet cards that includes all stack processing, and write a simple driver that includes a timing mechanism and a logger. It invalidates itself because your real-life connection speeds would depend on the actual card you usually use, the OS, etc. ad nauseum, and you would be bypassing all of those.
2. if you are using a "free" as in open source OS, specifically as in Linux or FreeBSD, then you could write a simple kernel module that could do it. It would still be wrong--but depending on your skill it wouldn't be too wrong.
3. this might actually work for you. Check to see how many total TCP connections your OS can handle, make sure your TCP timeout is set to the default 15 minutes, then set up a simple perl script that simply starts a timer, opens sockets as fast as it can, and when it reaches the total the OS can handle it lets you know the time passed. Take that and divide by total number of connections and you get the average.... It won't be very accurate, but it will give you some kind of idea.
Please forgive the humor....
--Patrick Darden
-----Original Message----- From: owner-nanog@merit.edu [mailto:owner-nanog@merit.edu]On Behalf Of Joe Shen Sent: Monday, March 10, 2008 5:00 AM To: NANGO Subject: Tools to measure TCP connection speed
hi,
is there any tool could measue e2e TCP connection speed?
e.g. we want to measue the delay between the TCP SYN and receiving SYN ACK packet.
Joe
______________________________________________________________________
Search, browse and book your hotels and flights through Yahoo! Travel. http://sg.travel.yahoo.com
__________________________________________________________________ Yahoo! Singapore Answers Real people. Real questions. Real answers. Share what you know at http://answers.yahoo.com.sg
On 2008-03-10, Joe Shen <joe_hznm@yahoo.com.sg> wrote:
is there any tool could measue e2e TCP connection speed?
WireShark, which also has a basic analysis package built-in for error and connection setup statistics. -- Scanned for viruses and dangerous content at http://www.oneunified.net and is believed to be clean.
We use LAN Traffic v2 to test speeds on our network. http://www.omnicor.com/netest.htm - Michienne Dixon Network Administrator liNKCity 312 Armour Rd North Kansas City, MO 64116 www.linkcity.org (816) 412-7990 From: Joe Shen Sent: Mon 3/10/2008 4:00 AM To: NANGO Subject: Tools to measure TCP connection speed hi, is there any tool could measue e2e TCP connection speed? e.g. we want to measue the delay between the TCP SYN and receiving SYN ACK packet. Joe ______________________________________________________________________ Search, browse and book your hotels and flights through Yahoo! Travel. http://sg.travel.yahoo.com
On Mon, Mar 10, 2008 at 4:00 AM, Joe Shen <joe_hznm@yahoo.com.sg> wrote:
hi,
is there any tool could measue e2e TCP connection speed?
e.g. we want to measue the delay between the TCP SYN and receiving SYN ACK packet.
So, all you want to know is basic RTT? Do you want to know about the network? or the hosts? or the whole 'system' ? One simple thing might be to just use WireShark which can calculate the various timings on an individual tcp-session basis. Another poster suggests tcpdump, also a fine solution... -Chris
participants (8)
-
Christopher Morrow
-
Darden, Patrick S.
-
Jamie Bowden
-
Joe Shen
-
Michienne Dixon
-
Ray Burkholder
-
Stuart Henderson
-
Wil Schultz