# MRV Throughput?



## TubaMan-Z (Apr 8, 2004)

I received my 2nd USB-ethernet adapter today and shortly afterward Zipper'ed my 2nd DTivo. All went well in that process. I excitedly brought up the Now Playing List on the Family Room DTivo (DTivo A at IP 192.168.1.130) and tried to view the newly listed NP List of the Living Room DTivo (DTivo B at IP 192.168.1.120). No luck. I got the msg (abbreviated) "The Living Room DVR could not be reached because a connection could not be established."

Well, I know that DTivo B is available and on-line: I can ping it, TivoWebPlus it, and telnet to it. I thought that maybe it was because I had (incorrectly) chosen to install the USB 2.0 drivers when I ran tweak.sh. So I ran tweak_uninstall.sh on both boxes, re-tweak'ed (answering "n" to "Install USB 2.0 drivers?"), and re-booted. Still no luck w/MRV.

Then I telneted to DTivo B and ran "speed" to DTivo A. Here are the results:

Living Room-TiVo# speed
TCP STREAM TEST to 192.168.1.130
netperf: receive_response: no response received. errno 0 counter 0

This didn't look good. So I then telneted to DTivo A and ran "speed" the other way around:

Family Room-TiVo# speed
netperf: receive_response: no response received. errno 0 counter 0

Both are connected to the same switch (Linksys BEFSR41b running firmware version 1.46.02, Aug 03 2004) using generic USB 1.1 to ethernet adapters that I got from Weaknees. Admittedly the ethernet cables are homemade (i.e. I crimped the end connectors on myself), but they seemed to work fine for the initial run of telnet/tweak.sh on each box. So I decided to try PINGing one box from the other:

Here is from DTivo A to DTivo B:

Family Room-TiVo# ping 192.168.1.120
PING 192.168.1.120 (192.168.1.120): 56 data bytes
64 bytes from 192.168.1.120: icmp_seq=7 ttl=64 time=10.7 ms
64 bytes from 192.168.1.120: icmp_seq=20 ttl=64 time=3.7 ms

--- 192.168.1.120 ping statistics ---
62 packets transmitted, 2 packets received, 96% packet loss
round-trip min/avg/max = 3.7/7.2/10.7 ms

And from DTivo B to DTivo A:

Living Room-TiVo# ping 192.168.1.130
PING 192.168.1.130 (192.168.1.130): 56 data bytes
64 bytes from 192.168.1.130: icmp_seq=8 ttl=64 time=3.2 ms
64 bytes from 192.168.1.130: icmp_seq=15 ttl=64 time=3.5 ms

--- 192.168.1.130 ping statistics ---
30 packets transmitted, 2 packets received, 93% packet loss
round-trip min/avg/max = 3.2/3.3/3.5 ms

Interestingly enough, I can USUALLY ping both DTivos without problem from a Windows XP Pro box:

C:\>ping 192.168.1.120

Pinging 192.168.1.120 with 32 bytes of data:

Reply from 192.168.1.120: bytes=32 time=1ms TTL=64
Reply from 192.168.1.120: bytes=32 time=1ms TTL=64
Reply from 192.168.1.120: bytes=32 time=2ms TTL=64
Reply from 192.168.1.120: bytes=32 time=1ms TTL=64

Ping statistics for 192.168.1.120:
Packets: Sent = 4, Received = 4, Lost = 0 (0% loss),
Approximate round trip times in milli-seconds:
Minimum = 1ms, Maximum = 2ms, Average = 1ms

C:\>ping 192.168.1.130

Pinging 192.168.1.130 with 32 bytes of data:

Reply from 192.168.1.130: bytes=32 time=2ms TTL=64
Reply from 192.168.1.130: bytes=32 time=1ms TTL=64
Reply from 192.168.1.130: bytes=32 time=1ms TTL=64
Reply from 192.168.1.130: bytes=32 time=1ms TTL=64

Ping statistics for 192.168.1.130:
Packets: Sent = 4, Received = 4, Lost = 0 (0% loss),
Approximate round trip times in milli-seconds:
Minimum = 1ms, Maximum = 2ms, Average = 1ms

Admittedly I do have intermittent problems accessing the DTivos from the same PC (i.e. ping will reply inconsistently or the telnet session will die).

C:\Documents and Settings\Administrator>ping 192.168.1.130

Pinging 192.168.1.130 with 32 bytes of data:

Reply from 192.168.1.130: bytes=32 time=2ms TTL=64
Reply from 192.168.1.130: bytes=32 time=2ms TTL=64
Reply from 192.168.1.130: bytes=32 time=1ms TTL=64
Reply from 192.168.1.130: bytes=32 time=1ms TTL=64

Ping statistics for 192.168.1.130:
Packets: Sent = 4, Received = 4, Lost = 0 (0% loss),
Approximate round trip times in milli-seconds:
Minimum = 1ms, Maximum = 2ms, Average = 1ms

C:\Documents and Settings\Administrator>ping 192.168.1.130

Pinging 192.168.1.130 with 32 bytes of data:

Request timed out.
Request timed out.
Reply from 192.168.1.130: bytes=32 time=1ms TTL=64
Reply from 192.168.1.130: bytes=32 time=1ms TTL=64

Ping statistics for 192.168.1.130:
Packets: Sent = 4, Received = 2, Lost = 2 (50% loss),
Approximate round trip times in milli-seconds:
Minimum = 1ms, Maximum = 1ms, Average = 1ms

I can successfully use the HMO (Photos and Music) option to stream photos and music from one of my PCs to either DTivo A or DTivo B. That has exhibited no problems.

So...I seem to have some kind of connectivity problem. It seems to be worse between the 2 DTivos than between the DTivos and other PCs on my home LAN, but it does exist in both places. I have never had connectivity or noticeable data speed problems with the computers on my home LAN. I realize that this may be more of an ethernet hardware question than a TiVo/MRV question, but I wanted to pick the TCF group-brain first - since it is always very helpful. 

Any ideas on next steps to take to debug this? Given the success that others have had with The Zipper, I have a hard time believing it is anything related to that and must be something hardware related.

Thanks.


----------



## Gunnyman (Jul 10, 2003)

sounds like a cabling issue to me.


----------



## Diana Collins (Aug 21, 2002)

You probably have the cabe sequence wrong, resulting in "paired" communications going across unpaired wires. The sequence should be, looking at the ethernet connector with the contacts at top, and the retaining clip down:

Orange/white striped
Orange solid
Green/white striped
Blue solid
Blue/white striped
Green solid
Brown/white striped
Brown solid

Many people make the mistake of reversing the green/white and the blue/white leads. That will result in exactly the symptoms you describe (low bandwidth communications like telnet will work most of the time, but high bandwidth transfers fail).


----------



## TubaMan-Z (Apr 8, 2004)

OK - what I've learned so far:

There are two basic straight-through cable wiring standards - T568A and T568B. The US Government specifies T568A. T568B is the AT&T standard. This according to http://www.ertyu.org/~steven_nikkel/ethernetcables.html. What Dan laid out above (thanks Dan) is the T568B standard. As I had not particularly followed either standard consistently, I went through all of my cables (not just to the DTivos, but to my various PCs and my wireless access point as well) and redid the connectors to ensure consistency with T568B throughout.

What I now have is a couple of correctly wired DTivos that can ping every other box on the LAN without errors but still cannot consistently and speedily ping each other. Also, attempts to connect (ping, telnet) to the DTivos from other PCs are still hit-or-miss. FWIW, Music and Photos (HMO) work just fine.

Now that I believe I have any cabling issues behind me, this kind of smells/feels like:
1) Something wrong in the TCP/IP stack on the DTivos themselves given the lack of responsiveness (ping) and closure/loss of connections (telnet), or 
2) Something about the USB/ethernet adapters that I got from weaknees, or
3) Something about my router's configuration is causing these problems. All PCs on my home LAN have DHCP assigned addresses, these are the only 2 with static IPs. Could that have anything to do with it? Is there any particular router configuration/filtering that would need to be accounted for?

Thanks.


----------



## TubaMan-Z (Apr 8, 2004)

I've kept digging at this...sheesh it is frustrating. It seems as if when I only have one of the DTivos (can be either one) plugged into the LAN, connections to it (ping, telnet) from PCs are solid. As soon as I plug in the other DTivo, things get indeterminately flakey. I have tried plugging the DTivo cables into different ports on the back of the switch with no positive effect.

FWIW, here is the routing info, etc. from the two boxes. I know just enough about Unix and TCP/IP to be dangerous to myself - so if someone else can see and point out any problems here, that would be great. When installing the Zipper, I used the latest tweak.sh which successfully downloaded the rbautch_files.tgz - thus external connectivity from the DTivos to the internet appears to be OK.

Tivo A (Living Room):
rc.sysinit.author: (note that there is no "route add default gw 192.168.1.1" line that I have seen mentioned in other threads/posts)

route add -host 204.176.49.2 gw 127.0.0.1
route add -net 204.176.49.0 gw 127.0.0.1 netmask 255.255.255.0
tivosh /hacks/network.tcl 192.168.1.120 192.168.1.1

mfs_network:
IP Address = 192.168.1.120
DNS = 192.168.1.1
Default Gateway = 192.168.1.1
Subnet Mask = 255.255.255.0
DHCP is off

route:
route_info, afname=inet, options=33
Kernel IP routing table
Destination Gateway Genmask Flags Metric Ref Use Iface
204.176.49.2 localhost.local 255.255.255.255 UGH 0 0 0 lo
192.168.1.0 * 255.255.255.0 U 0 0 0 eth0
204.176.49.0 localhost.local 255.255.255.0 UG 0 0 0 lo
default 192.168.1.1 0.0.0.0 UG 2 0 0 eth0

etc/hosts:
# Copyright (c) 2001 TiVo Inc.
127.0.0.1 localhost.localdomain localhost
192.168.1.130 FamilyRoom

Tivo B (Family Room):
rc.sysinit.author: (note that there is no "route add default gw 192.168.1.1" line that I have seen mentioned in other threads/posts)
route add -host 204.176.49.2 gw 127.0.0.1
route add -net 204.176.49.0 gw 127.0.0.1 netmask 255.255.255.0
tivosh /hacks/network.tcl 192.168.1.130 192.168.1.1

mfs_network:
IP Address = 192.168.1.130
DNS = 192.168.1.1
Default Gateway = 192.168.1.1
Subnet Mask = 255.255.255.0
DHCP is off

route:
route_info, afname=inet, options=33
Kernel IP routing table
Destination Gateway Genmask Flags Metric Ref Use Iface
204.176.49.2 localhost.local 255.255.255.255 UGH 0 0 0 lo
192.168.1.0 * 255.255.255.0 U 0 0 0 eth0
204.176.49.0 localhost.local 255.255.255.0 UG 0 0 0 lo
default 192.168.1.1 0.0.0.0 UG 2 0 0 eth0

etc/hosts:
# Copyright (c) 2001 TiVo Inc.
127.0.0.1 localhost.localdomain localhost
192.168.1.120 LivingRoom

Thanks.


----------



## Diana Collins (Aug 21, 2002)

Couple of difference between my Zippered/Tweaked TiVo and yours:

1) I don't have the call to /hacks/network.tcl in my rc.sysinit.author. That shouldn't be required, since the tcl program sets the passed parameters in MFS, making them permanent.

2) I don't have the name of my TiVo in the hosts file.

Other than that, my setup is identical to yours. I have 5 TiVos, but only one of them was Zippered/Tweaked (the rest were done manually, before the Zipper existed). 

I doubt that either of these differences can account for a difference when two TiVos are attached versus one. That would seem to indicate some collision between them. When they are attached to the router, do you see alot of traffic on their ports when you are not trying to attach to them? They SHOULD be pretty idle, with just a few flickers of activit every couple of seconds.


----------



## TubaMan-Z (Apr 8, 2004)

Dan,

2) Just for clarity, the name of the DTivo in the etc/hosts file is not the name of the DTivo upon which the etc/hosts file resides. It is the name of the other DTivo. This is just so that I can ping the other one without typing in the IP. Also, I added this AFTER I started trying to debug this.

With either just one or both of the DTivos LAN connected, there is typically only intermittent traffic from/to either one, at least as shown by the flickering light on the USB/ethernet adapter. It flickers pretty randomly with between 1 to 20+ seconds between flickers, average somewhere around 4-6 seconds.

I had also considered a collision of some sort. I have seen these sorts of symptoms when two systems had the same statically assigned IP. But given the contents of the DTivo's various config files, that doesn't seem to be the case here.

I appreciate the ideas. I am wondering about trying to locate some minimal function LAN traffic sniffer that I could use to watch what is going on (shutting down all of the other traffic on the LAN first of course). Other ideas or pointers very welcome.

Thanks again.


----------



## Diana Collins (Aug 21, 2002)

Okay...so you're not seeing a jabbering ethernet adapter or anything like that...that's good.

If you have access to a copy of the Windows XP Pro Resource Kit, it has a basic sniffer program, Netmon.

The only other suggestion I have is that I have seen wierd problems at times with cascaded switches, hubs and routers, particularly with auto-MDI ports. It might be worth stripping the network down to just the TiVos and maybe a PC. A simple 5 port switch is only about $20.


----------



## rbautch (Feb 6, 2004)

Dan Collins said:


> Couple of difference between my Zippered/Tweaked TiVo and yours:
> 
> 1) I don't have the call to /hacks/network.tcl in my rc.sysinit.author. That shouldn't be required, since the tcl program sets the passed parameters in MFS, making them permanent.


 FYI, Dan is correct about this, and if you have that line in your author file, you may want to delete it. It's fine as long as you continue to use that IP address, but if you decide to change is someday, your changes would have been overriden when you reboot since it'll want to revert back to the original IP. This issue was fixed in a later version of the Zipper which added some piped sed commands to edit that line out when you run the enhancement script.


----------



## austin61 (Jun 3, 2005)

What make/model are the ethernet adapters? I didn't see it mentioned in your post, but may have missed it due to the length.


----------



## TubaMan-Z (Apr 8, 2004)

I've now commented out the lines in the rc.sysinit.author files on the 2 DTivos per rbautch's post.

I'll check around for netmon and the Windows Pro Resource Kit. I have some resources for that. It's easy enough to unplug the rest of my LAN from my switch and leave just the 2 DTivos and a PC.

The ethernet adapters are...generic. They were bought from Weaknees for $19 each. The best I can tell is that they are of Chinese manufacture and are claimed to be USB 1.1 compliant. Weaknees describes them as "Our USB to Ethernet adapter is guaranteed to work with any Series 2 standalone TiVo and a DHCP internet network. Models and manufacturers may vary, but they will all be compatible without ANY driver installation. New." Yeah I know. I've been too cheap before and it's cost me more in time than it saved me in money. It may be the same situation again. I've read enough about troubles with various versions of other USB/ethernet adapters that I thought it would be safe to go with a vendor who should know what they're selling (Note: At this point I have no evidence pointing to the adapters sold by Weaknees as the root cause of my problems). I probably should have just shelled out the extra $20 and got the Linksys USB200M 10/100 adapters straight from tivo.com.

Thanks to all who are still reading this thread and trying to help. It IS appreciated.


----------



## austin61 (Jun 3, 2005)

TubaMan-Z said:


> The ethernet adapters are...generic. They were bought from Weaknees for $19 each. The best I can tell is that they are of Chinese manufacture and are claimed to be USB 1.1 compliant. Weaknees describes them as "Our USB to Ethernet adapter is guaranteed to work with any Series 2 standalone TiVo and a DHCP internet network. Models and manufacturers may vary, but they will all be compatible without ANY driver installation. New."
> 
> I probably should have just shelled out the extra $20 and got the Linksys USB200M 10/100 adapters straight from tivo.com.


One thing to note is you are not using a Series 2 standalone Tivos. You have Directv units, so the adapters could be causing a problem.

If you're looking to buy a different adapter you should look into the Netgear FA120. They list for $30 at Compusa, but can easily be found online for even less. They're USB 2.0 just like the USB200M. But is has a much better design. The USB200M connector is flimsy and I've had two break. Now all four of my units have the Netgear FA120.


----------



## TubaMan-Z (Apr 8, 2004)

Still debugging. I unplugged everything from the switch except for the 2 DTivos. That of course led to the "empty Now Playing List syndrome" which led to more education.  Unfortunately, it did not lead to MRV working. Same symptoms as before - they can see each other (as evidenced by listing DTivo A in the NPL of DTivo B and vice-versa) but a connection cannot be made to access the remote NPL. This rules out conflicts with other systems on the network, although it admittedly does not rule out the switch itself.

Things left to try based on suggestions to date:
1) Netmon
2) Different USB/ethernet adapters

Thanks.


----------



## TubaMan-Z (Apr 8, 2004)

Good news! My Netgear FA120s arrived today and all is well (OK - so far...) Unplugged the generic Chinese USB 1.1 adapters that I got from Weaknees, plugged in the FA120s, and MRV worked just fine. Speed reports:

Family Room-TiVo# speed
TCP STREAM TEST to 192.168.1.120
Recv Send Send Utilization Service Demand
Socket Socket Message Elapsed Send Recv Send Recv
Size Size Size Time Throughput local remote local remote
bytes bytes bytes secs. 10^6bits/s % S % S us/KB us/KB

131070 131070 131070 10.11 6.11 46.76 67.24 627.258 901.942

which looks pretty reasonable for USB 1.1. Now to install the USB 2.0 drivers (is there a shortcut rather than running tweak_uninstall and tweak again?).

The good news in all of this is that I know all of my cabling is good and the router is fine. The bad news is that I have now spent $66 on ethernet adapters when if I'd been smarter in the first place I'd only have spent $26. Ah, the cost of education these days!


----------



## Diana Collins (Aug 21, 2002)

You should expect to at least double your throughput with USB 2.0. I get about 16Mb/sec between wired TiVos and about 13 Mb/sec between wireless bridged ones.


----------



## TubaMan-Z (Apr 8, 2004)

With USB 2.0 drivers enabled:

Family Room-TiVo# speed
TCP STREAM TEST to 192.168.1.120
Recv Send Send Utilization Service Demand
Socket Socket Message Elapsed Send Recv Send Recv
Size Size Size Time Throughput local remote local remote
bytes bytes bytes secs. 10^6bits/s % S % S us/KB us/KB

131070 131070 131070 10.04 13.21 73.40 92.43 455.181 573.201

So yep, about 2x. Not the 16Mb Dan is getting, but plenty fast (it transfers faster than I watch it).

Thanks again to all who provided suggestions through this.


----------



## JamieP (Aug 3, 2004)

TubaMan-Z said:


> With USB 2.0 drivers enabled:
> 
> 
> ```
> ...


Is gloating fair game?

This is with AGIGAUSB adapters and jumbo frames. First is tivo2pc. Second is tivo2tivo. Two smc gige switches between the two tivos.


```
bash-2.02# netperf -c -C -H fedora.home.lan -- -S 65536 -s 65536
TCP STREAM TEST to fedora.home.lan
Recv   Send    Send                          Utilization       Service Demand
Socket Socket  Message  Elapsed              Send     Recv     Send    Recv
Size   Size    Size     Time     Throughput  local    remote   local   remote
bytes  bytes   bytes    secs.    10^6bits/s  % S      % S      us/KB   us/KB

131072 131070 131070    10.01        83.84   99.90    2.08     97.612  4.069


bash-2.02# netperf -c -C -H tivo-bedroom.home.lan -- -S 65536 -s 65536
TCP STREAM TEST to tivo-bedroom.home.lan
Recv   Send    Send                          Utilization       Service Demand
Socket Socket  Message  Elapsed              Send     Recv     Send    Recv
Size   Size    Size     Time     Throughput  local    remote   local   remote
bytes  bytes   bytes    secs.    10^6bits/s  % S      % S      us/KB   us/KB

131070 131070 131070    10.01        47.57   49.25    53.02    84.814  91.304
```
Actual show transfers run at 5-6MBps. I do a little better if I play tricks like tuning to a dead channel to stop the live buffer.

This is on SA 240 tivos. YMMV. On a DTivo, stopping the two live buffers may be more important.


----------



## rbautch (Feb 6, 2004)

Holy crap!


----------



## JamieP (Aug 3, 2004)

rbautch said:


> Holy crap!


The interesting thing is that the tivo-to-tivo transfers are not CPU bound (see the Utilization columns), so something else is limiting performance. This is probably why MRV performance (e.g. 5-6MBps = 40-48Mbps) is pretty close to the netperf performance.


----------

