CAT-6 Cable: What Speeds Should I Be Expecting?

6

3

I've just ran a CAT-6 cable throughout my house. I've terminated both my ends using a CAT-6 patch panel and a CAT-6 keystone jack.

I've put two computers on either end (Macbook Pro 13"; I believe capable of a Gbps, and a Gateway PC that is definitely capable of a Gbps), set them up on the same network (manually assigning an address of 192.168.0.1/24 and 192.168.0.2/24), and ran iperf. There is no switch, hub, or any other network device inbetween: just the two laptops, connected via patch cable to either a keystone jack, or a patch panel.

The results are as follows:

eddie@prowl ~ $ iperf -s
------------------------------------------------------------
Server listening on TCP port 5001
TCP window size:   256 KByte (default)
------------------------------------------------------------
[  4] local 192.168.0.2 port 5001 connected with 192.168.0.1 port 1303
[ ID] Interval       Transfer     Bandwidth
[  4]  0.0-10.0 sec    560 MBytes    470 Mbits/sec
[  4] local 192.168.0.2 port 5001 connected with 192.168.0.1 port 1304
[ ID] Interval       Transfer     Bandwidth
[  4]  0.0-10.0 sec    559 MBytes    469 Mbits/sec

As I understand it, the theoretical maximum I should get would be about 1000 Mbit, or 1 Gbit. Unless I'm mistaken, what I'm seeing is exactly half of that.

Now, the known problem I have is that I used patch cable to attach to the patch panel and the keystone jack, and I'm wagering those are CAT-5 or CAT-5e at best.

Anyhow, my question as it stands is whether I should be happy with the output of this cable as is, or if I should be investing in some CAT-6 patch cable (I plan to anyhow later, but for testing purposes now, I'm curious if I should get some immediately) to improve those numbers.

Thanks.

Eddie Parker

Posted 2010-09-08T16:36:32.603

Reputation: 2 074

2You left out something very important: is there a switch or router? If so, what model/speed? – JNK – 2010-09-08T16:43:17.597

Good point. I'll update the question here, but in this test - no. It's just going straight through the patch panel. – Eddie Parker – 2010-09-08T16:46:26.563

Answers

4

Alright, found my problem, so unfortunately I'm going to have to mark my own answer as correct - I'm upvoting everyone who's answered me here as there is some great stuff in your posts.

The problem for me was that my NIC card in my laptop is a "Broadcom NetXtreme Gigabit" card. I'm not entirely sure what the problem is, but if I use my laptop against my Linux server, the results are quite different:

eddie@prowl ~ $ iperf -c 10.0.0.10 2>&1
------------------------------------------------------------
Client connecting to 10.0.0.10, TCP port 5001
TCP window size:   129 KByte (default)
------------------------------------------------------------
[  3] local 10.0.0.216 port 52201 connected with 10.0.0.10 port 5001
[ ID] Interval       Transfer     Bandwidth
[  3]  0.0-10.0 sec  1.07 GBytes    920 Mbits/sec

I'm guessing the issue has something to do with the following [source]:

Why is there no option to force the speed and duplex to 1000Mb/s - Full Duplex?

Per the IEEE standard, the only IEEE compliant way to operate at 1000Mb/s-Full duplex is through auto-negotiation. If the network switch being used is IEEE compliant, the link speed will auto-negotiate to 1000Mb/s-Full duplex when autoneg is selected.

All in all I'm happy. One day I'll figure out the PC laptop's issue, but for now, if I can achieve 920 Mbit/sec with iperf, at least that means I'm capable of higher speeds than 480!

Thanks for all the help all. Hope this helps someone else out there.

Eddie Parker

Posted 2010-09-08T16:36:32.603

Reputation: 2 074

Thanks for info about network card! I a card from same series on my laptop too, so that means that there is still hope for my low transfer speeds! – AndrejaKo – 2010-09-09T08:39:59.490

6

I'd say that your results look good. There are many other things which impact network speeds. Both the Mac and the PC may have Gigabit network cards, but not all network cards are same.

In general on older PCs Gigabit network cards use PCI slots which are bottlenecks. This is especially true for integrated cards. Also integrated cards usually have cheap chipsets which offload some of the work to the CPU. This negatively impacts network performance.

Another thing that comes to mind is MTU size. It can impact network speeds. Try enabling Jumbo Frames if they are disabled and see what happens.

Also, just as a sidenote, I never managed to get more than 350Mb/s using a patch cable connecting my laptop and desktop (I can't remember network cards at the moment, sorry).

AndrejaKo

Posted 2010-09-08T16:36:32.603

Reputation: 16 459

Great comment - thanks. The 350Mb/s - that was using CAT5 or CAT5e, do you know? If CAT5e, that makes me feel better about the ~500 I'm getting. – Eddie Parker – 2010-09-08T18:15:45.557

@Eddie Parker That was 1 meter long CAT5e cable. – AndrejaKo – 2010-09-08T18:26:04.957

@AndrejaKo: wow, that's definitely to slow. Have you tried using another cat5e cable? see my benchmarks below. – lajuette – 2010-09-09T11:26:17.687

@lajuette As I said in another comment, I was using short piece of Cat5e cable. Anyway, since I saw high benchmarks, I'm going to start experimenting with new drivers and Cat6 cable. – AndrejaKo – 2010-09-09T12:24:04.963

1i meant that you should replace your short cat5e cable with another cat5e cable. I was using cat5e, too, and got about 870 MBit/s. But trying new drivers might do the trick, too. – lajuette – 2010-09-09T13:50:02.020

@lajuette Aha! OK, I understand what you meant now. – AndrejaKo – 2010-09-09T14:27:14.030

3

I haven't had much experience testing CAT cables, but for most other things a system is only as good as its weakest part. So, even if you have CAT 6 cables capable of high speeds, you will be limited by the speed of whatever other cable you're using.

Cat 5 and Cat 5e UTP cables can support 10/100/1000 Mbps Ethernet. Although Cat 5 cable may support to some degree in Gigabit Ethernet (1000 Mbps), it performs below standard during high-data transfer scenarios, so I do not recommend you to use Cat 5 cable in Gigabit Ethernet, use Cat 5e instead (of course Cat 6 is the best).

Cat 6 UTP cable is manufactured targeting on Gigabit Ethernet and backward compatible with 10/100 Mbps Ethernet. It performs better then Cat 5 cable with higher transmission rate and lower transmission error. If you plan to have Gigabit network, look for Cat 5e or Cat 6 UTP cables.

Source

Ryan

Posted 2010-09-08T16:36:32.603

Reputation: 1 488

Awesome - that at least confirms that my suspicion could be correct (the possibility of the patch cable causing the issue). Even so, it's good to know that ~500 isn't terrible, even if it is rated Gigabit. – Eddie Parker – 2010-09-08T18:17:49.873

1Eddie, I highly doubt your cable is the problem here. If you have a link at a given rate, then your card runs at that rate. If you want to confirm this, then check the error count. – Brad – 2010-09-08T21:31:03.217

3

Getting GigE speed between two devices takes doing. There are many non-cabling factors that can affect throughput. First and foremost, TCP/IP itself may cause throttling depending on how the IP stacks of both devices interoperate. Get it really wrong and you can be limited to a swanky 15Kb/s. Also how either stack handles even simple failures can have a big impact on perceived bandwidth usage if the test is short enough for the errors frequent enough. And then there are device-level bottlenecks. Not all GigE cards are capable of shoveling packets that fast even under ideal conditions.

SysAdmin1138

Posted 2010-09-08T16:36:32.603

Reputation: 5 239

3

My Setup

MacBook <---> TimeCapsule <---> PC

Both the MacBook and my PC have a GBit ethernet NIC and the TimeCapsule has a GBit ethernet Switch.

lennart@carla:~$ iperf -s 
------------------------------------------------------------
Server listening on TCP port 5001
TCP window size: 85.3 KByte (default)
------------------------------------------------------------
[  4] local 192.168.1.5 port 5001 connected with 192.168.1.10 port 61313
[ ID] Interval       Transfer     Bandwidth
[  4]  0.0-10.0 sec  1.02 GBytes    875 Mbits/sec
[  5] local 192.168.1.5 port 5001 connected with 192.168.1.10 port 61317
[  5]  0.0-30.0 sec  3.07 GBytes    879 Mbits/sec

That's about 100 MByte/sec. I remember having speeds around 60MByte/s when transferring files from one PC to another, but i think the bottleneck was the harddrive in this case.

Note: Setting the window size to 256 KB manually with -w 256 slowed everything down. I don't know how the default window size is determined.

[edit] I'm usin cat5e cables here. Longest link: about 10 meters.

lajuette

Posted 2010-09-08T16:36:32.603

Reputation: 4 364

You're just showing off. :P Did you have to tweak any of the settings on the MacBook or PC? Frames, MTU, duplexing? I wonder if the GBit switch is helping things 'sense' full duplex or some such. – Eddie Parker – 2010-09-08T22:49:03.143

1Hehe, no, i'm not showing of. I'm using the default settings. FYI: The PC is a Zotac Ion ITX-A. What i'm trying to say: I wouldn't be satisfied with 470 MBit/s! And i forgot to mention: I'm using cat5e cables. – lajuette – 2010-09-09T05:34:39.013

Was just teasing on the "showing off" comment. :) Much appreciated to get some realistic benchmarks. I'm now rocking ~920 Mbits/sec. Now I just have to wait until 10 Gbit cards are affordable to truly test out the CAT-6... :D – Eddie Parker – 2010-09-09T08:39:50.417

2

I'm answering my own question as I asked some techs at work, and they mentioned I may want to investigate enabling full-duplex mode on both cards in case they're stuck at half-duplex.

Admittedly I'm not really sure of the difference (except the obvious "half" doesn't sound as good as "full" :) ), so I need some investigation. Please let me know if this answer has merit or not. :) I'll be doing some investigation about this when I get home as well.

Eddie Parker

Posted 2010-09-08T16:36:32.603

Reputation: 2 074

2In telecommunications, full duplex basically means that both sides can transmit data at the same time. Half duplex means that while one side is transmitting, the other side has to wait until first is finished (or a predetermined amount of time passes and first side makes a pause so that second can report if it has something to transmit or not). – AndrejaKo – 2010-09-08T18:29:47.130

There shouldn't be a major impact when one side is just transmitting and the other side is just listening, but some impact is possible. Still, the two sides should auto-negotiate settings. If they badly detected each-others capabilities, some hand tuning could help. – AndrejaKo – 2010-09-08T18:31:18.390

-1

Hi have mix here of UTP Cat5e(to PC) and UTP Cat6 patch(to patch panel) and STP Cat6 lines from patch panel to the access points. Switched giga-ethernet hubs are DELL Powerconnects 2724 from 2004. Test systems: 2010 Mac Mini Server, up2date OS X Snow Leopard (iperf server) and DELL Optiplex 740, up2date Windows XP PC (iperf client).

Several bandwidth tests with iperf reveal performance between 700 and 900KBit/sec. Changing the role of client and server gives similar results. Probably variable speed depends on other users accessing the Mail on the server continuously. It turned out very useful for testing cables and switches and hubs. Some Cat6 patch cables can be bad in specific configurations but still useful in other configurations. Had to exchange some with older better performing Cat5e patch chords of differnet length. Suspect that small kinks in the patch chords were the cause.

radume

Posted 2010-09-08T16:36:32.603

Reputation: 1