欢迎访客 ( 登陆 | 注册 )

论坛索引 | 最新主题 | 热门主题 | 搜索论坛 | 成员列表 | 在线帮助

前往页面: (2) [1] 2  ( 前往第一篇未阅读文章 )
解决网络中MTU的困扰-zt
« 上一篇主题 | 下一篇主题 » 跟踪主题 | 邮寄主题 | 打印主题
  superlee 离线
1. 解决网络中MTU的困扰-zt
HP : 87 / 879
MP : 630 / 13826
EXP : 18%
天道酬勤


成员等级: 36
发表总数: 1891
金币总数: 418
所属组别: 核心成员
注册日期: 2003/08/22

错误的网络访问控制策略导致PMTUD实现故障

作者:Yiming Gong
http://security.zz.ha.cn

故障现象:XX服务器无法下载大文件。

该文章解释了MTU,PMTUD的相关概念,故障原因是网络通路中的某个设备错误的关闭了所有的ICMP协议,导致
服务器与客户端无法收到宣告数据包超出设备数据帧最大值的ICMP TYPE3 CODE 4的包,双方无法降低数据帧大
小,所有的大包均被丢弃。

解决思路:
1、检查网络通路中每一跳的ICMP控制策略,这种方式能彻底解决问题,但网络规模大时,工作量大,时间长。

2、修改服务器与客户端的MTU值,使其能小于中间设备的MTU,确保数据包通过,这要慢慢尝试。

3、修改服务器与客户端的PMTUD实现,禁止PMTUD方式,数据包永远以小包传送,但数据传送效率极低。

。。。。。。。。


具体看附件

User Attached Image 下载附件
pmtud________.pdf ( 下载次数: 820 )


发表于2004/07/6, 22:52
     Top
  superlee 离线
2. Re:解决网络中MTU的困扰-zt
HP : 87 / 879
MP : 630 / 13826
EXP : 18%
天道酬勤


成员等级: 36
发表总数: 1891
金币总数: 418
所属组别: 核心成员
注册日期: 2003/08/22

Windows 2000 或 Windows NT 的 TCP/IP 和 NBT 配置参数:
http://support.microsoft.com/default.aspx?...kb;zh-cn;120642


TCP/IP and NBT configuration parameters for Windows XP:
http://support.microsoft.com/default.aspx?...kb;EN-US;314053


cisco文档:

http://www.cisco.com/warp/public/105/38.pdf



User Attached Image 下载附件
CISCO_IP_MTU_MSS.pdf ( 下载次数: 303 )


发表于2004/07/6, 23:00
     Top
  superlee 离线
3. Re:解决网络中MTU的困扰-zt
HP : 87 / 879
MP : 630 / 13826
EXP : 18%
天道酬勤


成员等级: 36
发表总数: 1891
金币总数: 418
所属组别: 核心成员
注册日期: 2003/08/22

微软的这三个TCP/IP选项大有用处啊

要更改这些参数,请采用下列步骤:
启动注册表编辑器 (Regedt32.exe)。
从 HKEY_LOCAL_MACHINE 子树,转到以下项:
SYSTEMCurrentControlSetServices

如下面相应的项中所述,向注册表项中添加一个值,方法是:单击编辑菜单上的添加数值,键入相应的数值,然后使用数据类型复选框设置数值类型。
单击确定。
退出注册表编辑器。
重新启动计算机,以使更改生效。
所有 TCP/IP 参数都是注册表值,这些值分别位于以下两个不同子项中的某一个下:
HKEY_LOCAL_MACHINESYSTEMCurrentControlSetServices

TcpipParameters
适配器名称ParametersTcpip

其中,适配器名称 指的是 TCP/IP 所绑定到的网络适配器的子项,如 Lance01。后一个注册表项下的值是特定于各个适配器的。同时具有 DHCP 值和静态配置值的参数可能存在也可能不存在,具体取决于系统/适配器是不是用 DHCP 配置的,以及(或者)是不是已指定静态覆盖值。必须重新启动系统,这些参数的更改才能生效。


EnableDeadGWDetect
项:TcpipParameters
数值类型:REG_DWORD - 布尔值
有效范围:0,1(False,True)
默认:1 (True)
说明:将此参数设置为 1 会使 TCP 执行死网关检查。启用此功能后,如果 TCP 多次重新传输某个片段而收不到响应, 就会让 IP 更改到一个备份网关。可以在“网络”控制面板中“TCP/IP 配置”对话框的“高级”部分定义备份网关。

EnablePMTUBHDetect
项:TcpipParameters
数值类型:REG_DWORD - 布尔值
有效范围:0,1(False,True)
默认:0 (False)
说明:将此参数设置为 1 (True) 会使 TCP 在执行路径 MTU 发现时,尝试检测“黑洞”路由器。当“黑洞”路由器需要用 Don't Fragment 位设置来碎片化 IP 数据报时,它不返回“无法到达 ICMP 目标”消息。TCP 依靠接收这些消息来执行路径 MTU 发现。启用此功能后,如果几次重新发送片段都没有收到响应,TCP 将尝试在不设置 Don't Fragment 位的情况下发送片段。如果收到片段响应,MSS 将降低并且以后在连接上传输的数据包中都会设置 Don't Fragment 位。启用黑洞路由器检测可以增加为特定的片段执行重新发送的最大次数。

EnablePMTUDiscovery
项:TcpipParameters
数值类型:REG_DWORD - 布尔值
有效范围:0,1(False,True)
默认:1 (True)
说明:将此参数设置为 1 (True) 会使 TCP 尝试发现到达一个远程主机的路径上的“最大传输单元”(MTU 或最大数据包大小)。通过发现路径 MTU 并将 TCP 片段限制为此大小,TCP 可以消除此路径上使用不同的 MTU 连接网络的路由器上的碎片。碎片会对 TCP 吞吐量产生不利影响并造成网络拥塞。如果将此参数设置为 0,则对于所有不是指向本地子网上的计算机的连接,都将使用 576 字节的 MTU。

发表于2004/07/6, 23:06
     Top
  暗香流转 离线
4. Re:解决网络中MTU的困扰-zt
HP : 0 / 600
MP : 256 / 8282
EXP : 2%
好多年了你别骗我了


成员等级: 25
发表总数: 768
金币总数: 183
所属组别: 高级成员
注册日期: 2004/04/20

不错,顶一下。大有帮助。谢谢超李。


user posted image

虽然我没有蝴蝶的翅膀,但我一定会飞去我想去的地方。
发表于2004/07/7, 08:37
      Top
  小宝 离线
5. Re:解决网络中MTU的困扰-zt
HP : 0 / 482
MP : 160 / 7277
EXP : 31%
名动江湖


成员等级: 20
发表总数: 482
金币总数: 786
所属组别: 中级成员
注册日期: 2003/11/12

好啊
我前几天也写了一篇pmtud的文章
看来有和我所见略同的英雄



有一天,我想象到了自己以后的生活:娶一个姿色平庸但有市户口和固定工作的女人。恩爱个一年半载之后彼此厌倦,她摔碟子我砸碗,她整日以泪洗面怨自己命苦遇人不淑,我每天借酒消愁叹怀才不遇人生苦短。墙角坐着一个屁大的孩子涕泗横流仰天长嚎―――天知道是谁家的孩子?
发表于2004/07/7, 08:56
     Top
  xufeng 离线
6. Re:解决网络中MTU的困扰-zt
HP : 0 / 347
MP : 84 / 4770
EXP : 90%
虾米皮皮


成员等级: 14
发表总数: 254
金币总数: 243
所属组别: 中级成员
注册日期: 2004/04/28

好文章,谢谢超级李
发表于2004/07/7, 09:08
     Top
  keaizhu 离线
7. Re:解决网络中MTU的困扰-zt
HP : 0 / 224
MP : 40 / 3544
EXP : 98%
江湖豪客


成员等级: 9
发表总数: 120
金币总数: 147
所属组别: 普通成员
注册日期: 2003/08/15

嗯, 长见识了. 有个问题, 假如host 没有收到ICMP 3/4, 继续以大于pmtu的size发送包...假如路径中有
router A 的MTU比host 小, 拿应该是router A 给包分片吧? 这样包还是可以通过的是吗?
这样是否存在一种可能有些时候host和destination可以通讯?
发表于2004/07/7, 11:21
     Top
  唐无敌 离线
8. Re:解决网络中MTU的困扰-zt
HP : 86 / 863
MP : 602 / 13411
EXP : 54%
四川唐门掌门


成员等级: 35
发表总数: 1807
金币总数: 1,226
所属组别: 高级成员
注册日期: 2003/09/16

其实这个问题涉及很多方面,要详细说的话要写很多,参考文献也有很多,产生的现象也多种多样。超里这篇文章介绍了大概,如果要深入的话还有太多太多的相关现象和处理方法了。


没有签名创意的网络新手
发表于2004/07/7, 12:02
       Top
  superlee 离线
9. Re:解决网络中MTU的困扰-zt
HP : 87 / 879
MP : 630 / 13826
EXP : 18%
天道酬勤


成员等级: 36
发表总数: 1891
金币总数: 418
所属组别: 核心成员
注册日期: 2003/08/22



别叫我“超李、超里”之类的

superlee
发表于2004/07/7, 13:34
     Top
  happydj 离线
10. RE: 解决网络中MTU的困扰-zt
HP : 103 / 1033
MP : 956 / 16145
EXP : 33%
名动江湖


成员等级: 42
发表总数: 2868
金币总数: 1,178
所属组别: 核心成员
注册日期: 2003/09/4

QUOTE


别叫我“超李、超里”之类的

superlee

laugh.gif laugh.gif laugh.gif laugh.gif
发表于2004/07/7, 13:37
      Top
  superlee 离线
11. RE: 解决网络中MTU的困扰-zt
HP : 87 / 879
MP : 630 / 13826
EXP : 18%
天道酬勤


成员等级: 36
发表总数: 1891
金币总数: 418
所属组别: 核心成员
注册日期: 2003/08/22

QUOTE
嗯, 长见识了. 有个问题, 假如host 没有收到ICMP 3/4, 继续以大于pmtu的size发送包...假如路径中有
router A 的MTU比host 小, 拿应该是router A 给包分片吧? 这样包还是可以通过的是吗?
这样是否存在一种可能有些时候host和destination可以通讯?


这要看数据包的DF标志位,如果设置了该标志位,那么router A正常配置下就不会分片,结果就是丢弃。


如果路由器按照cisco文档里配置,router A能清掉数据包的DF标志位,OK,host和destination就可以通讯
发表于2004/07/7, 13:37
     Top
  唐无敌 离线
12. Re:解决网络中MTU的困扰-zt
HP : 86 / 863
MP : 602 / 13411
EXP : 54%
四川唐门掌门


成员等级: 35
发表总数: 1807
金币总数: 1,226
所属组别: 高级成员
注册日期: 2003/09/16

superlee不就是超李吗 wacko.gif


没有签名创意的网络新手
发表于2004/07/7, 15:25
       Top
  唐无敌 离线
13. Re:解决网络中MTU的困扰-zt
HP : 86 / 863
MP : 602 / 13411
EXP : 54%
四川唐门掌门


成员等级: 35
发表总数: 1807
金币总数: 1,226
所属组别: 高级成员
注册日期: 2003/09/16

QUOTE
如果路由器按照cisco文档里配置,router A能清掉数据包的DF标志位


这个如何配置?这个到是一个好消息。请super李详细说一下嘛


没有签名创意的网络新手
发表于2004/07/7, 15:26
       Top
  FreeFire 离线
14. RE: 解决网络中MTU的困扰-zt
HP : 88 / 885
MP : 641 / 13127
EXP : 42%
流浪的小孩


成员等级: 36
发表总数: 1924
金币总数: 101
所属组别: 核心成员
注册日期: 2003/12/12

QUOTE


别叫我“超李、超里”之类的

superlee

超级狸


为人民服务!
发表于2004/07/7, 17:23
      Top
  superlee 离线
15. Re:解决网络中MTU的困扰-zt
HP : 87 / 879
MP : 630 / 13826
EXP : 18%
天道酬勤


成员等级: 36
发表总数: 1891
金币总数: 418
所属组别: 核心成员
注册日期: 2003/08/22

看宫一鸣老兄文章里的,第4个解决思路:

4:目前cisco设备还支持使用ip tcp adjust-mss命令强制调整mss值,或使用策略路由中的强制清除df标志位命令,等于变通的调整了pmtud的实现


其它的serch一把cisco吧
发表于2004/07/7, 17:27
     Top
  杨小邪 离线
16. Re:解决网络中MTU的困扰-zt
HP : 0 / 437
MP : 131 / 7559
EXP : 50%
名动江湖


成员等级: 18
发表总数: 395
金币总数: 592
所属组别: 中级成员
注册日期: 2003/02/9


终于知道那天为什么用我的机器可以,用别的机器不行了,多谢!!


如果我错了,请纠正,我们注重事实,不含糊其词
发表于2004/07/7, 18:39
     Top
  小宝 离线
17. Re: 解决网络中MTU的困扰-zt
HP : 0 / 482
MP : 160 / 7277
EXP : 31%
名动江湖


成员等级: 20
发表总数: 482
金币总数: 786
所属组别: 中级成员
注册日期: 2003/11/12

<