免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
12下一页
最近访问板块 发新帖
查看: 2922 | 回复: 17
打印 上一主题 下一主题

请教两个网络方面的问题~ [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2008-08-27 00:00 |只看该作者 |倒序浏览
各位CUer好,
    小弟最近在看计算机网络方面的书,在阅读中碰到几个问题,想请大家帮忙分析一下:
    A.关于MTU与576 octets
    对于MTU,我有了一些粗浅的认识:当IP数据报的长度>待传输网络的MTU时,该数据报就要被分片。但当我阅读《Internetworking with TCP/IP》时,有如下一段话不太理解:
    The IP specification states that routers must accept datagrams up to the maximum of the MTUs of networks to which they attach.In addition,a router must always handle datagrams of up to 576 octets.(Hosts are also required to accept,and reassemble if necessary,datagrams of at least 576 octets.)
    我的问题是:
    1)假设路由器连接了两个网络,A网MTU是500,B网MTU是1500,我知道当B网的数据报大小介于500和1500之间而要发到A网时,路由器要对其分片。可第一句话的含义是什么呢?我英语不太好,up to的意思我觉得是“不多于,不大于”,那对不大于其连接的所有网络的最大MTU能够accept是什么意思?这个接收指的是什么?
    2)第二句的576这个数是怎么来的呢?
    3)第二句从路由器和主机两个角度说明的,怎么一个是up to,一个是at least?

    B.关于“Souce Route Options”
    关于其中的严格源路由部分,我有了一些粗浅的认识。但具体的处理过程还有以下的疑问。
    当分组到达一个路由器时,路由器需要依据选项中的指针值取出源主机曾填写过的某条IP地址,并将其作为该数据报的目的地址,随后其需要将取出地址的地方填上自己的IP地址,这个IP地址是哪个呢?可能性有两个:一个是接收到该数据报的那个网络上的该路由器地址,另一个则是将要发送数据报的那个路由器接口的地址,即一个入口一个出口的问题。我查了一些资料,反倒有些糊涂了。
    1)《TCP/IP Protocol Suite》中给出了一个示意图,见附件
    从该图中可知,记录的是入口地址。
    2)《TCP/IP illustrated》(Volumel 1)P105 给出了示意图,介于没有电子图片就不在这里贴了,那个图上表明的也是入口地址。
    3) RFC791 http://www.faqs.org/rfcs/rfc791.html中有如下一段话:
    If the address in destination address field has been reached and the pointer is not greater than the length, the next address in the source route replaces the address in the destination address field, and the recorded route address replaces the source address just used, and pointer is increased by four.
    The recorded route address is the internet module's own internet address as known in the environment into which this datagram is being forwarded.
    从这段话看,似乎记录的是出口地址。
    4)《Internetworking with TCP/IP》中有如下一段话:
    If the list is not exhausted, the router follows the pointer,picks up the IP address, replaces it with  the router's address*, and  forwards the datagram using the address obtained from the list.
    *A router has one address for each interface; it records the address that corresponds to the network over which it forwards the datagram.
    从这段话看,似乎记录的也是出口地址。

    究竟是哪个地址呢?
    请大家不吝赐教~~谢谢~~

[ 本帖最后由 dwlnet 于 2008-8-27 08:45 编辑 ]

论坛徽章:
0
2 [报告]
发表于 2008-08-27 11:00 |只看该作者
请大家不吝赐教~~

论坛徽章:
0
3 [报告]
发表于 2008-08-27 21:05 |只看该作者
原帖由 dwlnet 于 2008-8-27 00:00 发表
各位CUer好,
    小弟最近在看计算机网络方面的书,在阅读中碰到几个问题,想请大家帮忙分析一下:
    A.关于MTU与576 octets
    对于MTU,我有了一些粗浅的认识:当IP数据报的长度>待传输网络的MTU时,该 ...


LZ 问的不只两个问题啊!

只能简要说说了:

对于"mtu的576",可以这么理解:
    576=40(分组地址的尺寸)+24(路由器用的选项)+512(数据)
对于"严格的源站选路":
    目前很多路由交换设备是不支持的,也不建议用. 实际上这个选项原来是用于军事目的的,对于常规应用,意义不大.

论坛徽章:
0
4 [报告]
发表于 2008-08-27 21:22 |只看该作者

回复 #3 system888net 的帖子

对于"Souce Route Options-->严格的源站选路",这里举一个小例子,用来说解释LZ的疑惑:
比如对于一个主机host_x要发送一个数据包给主机host_y,其中要指定经过路由器router_a和router_b,那么大概的过程如下:
  1. host_x:  目标host_y,选项:code=0x89, router_a,router_b
  2. host_x 发送低层:  目标router_a,选项: code=0x89, router_b,host_y
  3. router_a:  目标router_b,选项: code=0x89, router_a,host_y
  4. router_b:  目标host_y,选项: code=0x89, router_a,router_b
实际上第4步发出时已经和第一步一样了.

论坛徽章:
0
5 [报告]
发表于 2008-08-27 21:44 |只看该作者
原帖由 system888net 于 2008-8-27 21:05 发表


LZ 问的不只两个问题啊!

只能简要说说了:

对于"mtu的576",可以这么理解:
    576=40(分组地址的尺寸)+24(路由器用的选项)+512(数据)
对于"严格的源站选路":
    目前很多路由交换设备是不支持的,也 ...


首先,谢谢888大哥一如既往地的支持和帮助啊!
那为什么数据要512字节呢?
还有,我的A问题中的1、3小问恳请多多指教哈~~

论坛徽章:
0
6 [报告]
发表于 2008-08-27 21:55 |只看该作者
原帖由 dwlnet 于 2008-8-27 21:44 发表


首先,谢谢888大哥一如既往地的支持和帮助啊!
那为什么数据要512字节呢?
还有,我的A问题中的1、3小问恳请多多指教哈~~


对于A的1,3是同一个问题,实际上你只要把报文分片和重组搞清楚就可以了.

论坛徽章:
0
7 [报告]
发表于 2008-08-27 21:59 |只看该作者
原帖由 system888net 于 2008-8-27 21:22 发表
对于"Souce Route Options-->严格的源站选路",这里举一个小例子,用来说解释LZ的疑惑:
比如对于一个主机host_x要发送一个数据包给主机host_y,其中要指定经过路由器router_a和router_b,那么大概的过程如下:
  1 ...


大哥说的过程我理解了,而《TCP/IP Protocol Suite》和《TCP/IP illustrated》(Volumel 1)中叙述的过程和大哥说的完全一致。即路由器将接收到该分组的自身网口地址放入了源路由选项中。从而导致最后到达目的主机时,选项中的数据与发送时完全相同。可是,我在阅读我上面提到的B问题的3、4参考文献时(特别是3,是RFC文档)怎么觉得英文表达的意思不是你列举的意思呢?它说得好像是将出口的地址放入选项中。即the address that corresponds to the network over which it forwards the datagram.


并且我又参看了Record Route Option里RFC的解释,并比对了针对这个选项《TCP/IP Protocol Suite》的说法和例子。例子见附件
并且RFC在叙述记录路由选项中记录的地址时的描述完全照搬了Souce Route Option,可是怎么出现了两个不一样的例子?还请大哥及大家解惑。

论坛徽章:
0
8 [报告]
发表于 2008-08-27 22:17 |只看该作者
原帖由 dwlnet 于 2008-8-27 21:59 发表


大哥说的过程我理解了,而《TCP/IP Protocol Suite》和《TCP/IP illustrated》(Volumel 1)中叙述的过程和大哥说的完全一致。即路由器将接收到该分组的自身网口地址放入了源路由选项中。从而导致最后到达目的 ...


路由器可以有多个口啊, 你知道用户在指定route选径时指定是router的入口还是出口? 这取决于具体的情况,不矛盾.

论坛徽章:
0
9 [报告]
发表于 2008-08-27 22:59 |只看该作者
原帖由 system888net 于 2008-8-27 22:17 发表


路由器可以有多个口啊, 你知道用户在指定route选径时指定是router的入口还是出口? 这取决于具体的情况,不矛盾.


在指定选项时应该指定的是入口吧,否则称之为源路由的话就有些勉强了。当然路由器把入口和出口哪个放入选项条目中都可以,但单从RFC中的解释来看,我觉得它指的是出口?大哥你觉得呢~~

论坛徽章:
0
10 [报告]
发表于 2008-08-28 20:30 |只看该作者
原帖由 dwlnet 于 2008-8-27 22:59 发表


在指定选项时应该指定的是入口吧,否则称之为源路由的话就有些勉强了。当然路由器把入口和出口哪个放入选项条目中都可以,但单从RFC中的解释来看,我觉得它指的是出口?大哥你觉得呢~~


入口和出口地址都可以,不影响路径的判断和计算,而且入口和出口是相对的,数据报的方向决定了此时对于这个数据报来说哪个是入口,哪个是出口.
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP