{"action":"created","issue":{"url":"https://api.github.com/repos/weaveworks/weave/issues/1255","labels_url":"https://api.github.com/repos/weaveworks/weave/issues/1255/labels{/name}","comments_url":"https://api.github.com/repos/weaveworks/weave/issues/1255/comments","events_url":"https://api.github.com/repos/weaveworks/weave/issues/1255/events","html_url":"https://github.com/weaveworks/weave/issues/1255","id":98920814,"number":1255,"title":"Don't rely on setting `ethtool tx off` on guest interfaces","user":{"login":"squaremo","id":62033,"avatar_url":"https://avatars.githubusercontent.com/u/62033?v=3","gravatar_id":"","url":"https://api.github.com/users/squaremo","html_url":"https://github.com/squaremo","followers_url":"https://api.github.com/users/squaremo/followers","following_url":"https://api.github.com/users/squaremo/following{/other_user}","gists_url":"https://api.github.com/users/squaremo/gists{/gist_id}","starred_url":"https://api.github.com/users/squaremo/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/squaremo/subscriptions","organizations_url":"https://api.github.com/users/squaremo/orgs","repos_url":"https://api.github.com/users/squaremo/repos","events_url":"https://api.github.com/users/squaremo/events{/privacy}","received_events_url":"https://api.github.com/users/squaremo/received_events","type":"User","site_admin":false},"labels":[{"url":"https://api.github.com/repos/weaveworks/weave/labels/chore","name":"chore","color":"207de5"}],"state":"open","locked":false,"assignee":null,"milestone":null,"comments":9,"created_at":"2015-08-04T08:52:05Z","updated_at":"2015-08-17T15:10:04Z","closed_at":null,"body":"In http://blog.weave.works/2015/07/16/bridge-over-troubled-weavers/, Bryan says\r\n\r\n> Linux’ TCP stack will sometimes attempt to send packets with an incorrect checksum, or that are far too large for the network link, with the result that the packet is rejected and TCP has to re-transmit.  This slows down network throughput enormously. When using weave as designed, the virtual ethernet device assigned to each container is configured to avoid this, but with --bridge=weave Docker creates the virtual ethernet device and weave doesn’t get a chance to do its configuration.\r\n\r\nIn configurations where weave does not create veth pairs (e.g., when working with CNI http://blog.weave.works/2015/08/03/weave-and-rkt/), there is no opportunity to run ethtool to do this configuration. It is hard to see this as a limitation of the rest of the world, rather than a limitation of \"weave as designed\".\r\n\r\nSo the question is, is this a problem for all users of bridge networking? (For instance, Docker -- a search of issues suggests it's not, or not yet recognised anyway)\r\nIf it's just a problem with weave, how can it be fixed?\r\n"},"comment":{"url":"https://api.github.com/repos/weaveworks/weave/issues/comments/131856775","html_url":"https://github.com/weaveworks/weave/issues/1255#issuecomment-131856775","issue_url":"https://api.github.com/repos/weaveworks/weave/issues/1255","id":131856775,"user":{"login":"rade","id":109109,"avatar_url":"https://avatars.githubusercontent.com/u/109109?v=3","gravatar_id":"","url":"https://api.github.com/users/rade","html_url":"https://github.com/rade","followers_url":"https://api.github.com/users/rade/followers","following_url":"https://api.github.com/users/rade/following{/other_user}","gists_url":"https://api.github.com/users/rade/gists{/gist_id}","starred_url":"https://api.github.com/users/rade/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/rade/subscriptions","organizations_url":"https://api.github.com/users/rade/orgs","repos_url":"https://api.github.com/users/rade/repos","events_url":"https://api.github.com/users/rade/events{/privacy}","received_events_url":"https://api.github.com/users/rade/received_events","type":"User","site_admin":false},"created_at":"2015-08-17T15:10:04Z","updated_at":"2015-08-17T15:10:04Z","body":"I am quite sure I spent a fair amount of time narrowing the options to the minimum. Which suggests that disabling checksum offloading is necessary."}}