网卡地址和多点播送(组播)及广播.docVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
网卡地址和多点播送(组播)及广播

网卡地址和多点播送(组播)及广播转 ? (2009-11-18 16:36:37) 转载 杂谈 分类:?挨踢技术 以太网的地址为48位,由ieee统一分配给网卡制造商,每个网卡的地址都必须是全球唯一的。共6个字节的长度 字节 5 4 3 2 1 0 位 47。。40 39。。32 31。。24 23。。16 15。。8 7。。0 例子 08 00 09 A0 4A B1 我们需要注意的是以太网地址的第40位是组播地址的标志位: 位 47。。41 40 39。。24 23。。0 ? 制造厂商标识 组播标志位 制造厂商标识 系列号 ? ? ? ? ? 共6个字节,其中前面3个字节(除了第40位),组成制造厂商的标识,每 个制造厂商的前3个字节是不同的,如果两个网卡的前面3个字节是一样的,那么这个卡是同一个公司制造的。同时通过该3个字节就可以反过来知道这个卡是哪个 厂制造的。后面3个字节为系列号,由制造厂商给自己生产的网卡分配一个号码,不同网卡的号码必须不同, 网卡地址的制造厂商的3个字节的标识中,例如上面的08:00:09 ,080009 是惠普公司的标识,表示这个卡是惠普公司制造的。3个字节的第一个字节,必须为偶数,上面的08是一个偶数,是因为第32位,就是第一个字节的最低位是组 播标识,必须为0。 以下 X0:XX:XX:XX:XX:XX X2:XX:XX:XX:XX:XX X4:XX:XX:XX:XX:XX X6:XX:XX:XX:XX:XX X8:XX:XX:XX:XX:XX XA:XX:XX:XX:XX:XX XC:XX:XX:XX:XX:XX XE:XX:XX:XX:XX:XX 为合法的以太网网卡地址。上面的X代表0-F中的任一个。如果你不是购买网卡,而 是自己购买芯片制造,那么地址怎么办?可以自己使用一个还没有被ieee分配的厂商编号就可以了。就算是使用已经分配的厂商编号也没有不可,只要你能保证 在你使用的局域网内,任何两个网卡的地址不一样就可以了。 地址?FF:FF:FF:FF:FF:FF?为广播地址,只能用在目的地址段,不能作为源地址段。目的地址为广播地址的数据包,可以被一个局域网内的所有网卡接收到。 地址 X1:XX:XX:XX:XX:XX X3:XX:XX:XX:XX:XX X5:XX:XX:XX:XX:XX X7:XX:XX:XX:XX:XX X9:XX:XX:XX:XX:XX XB:XX:XX:XX:XX:XX XD:XX:XX:XX:XX:XX XF:XX:XX:XX:XX:XX 为组播地址,只能作为目的地址,不能作为源地址。组播地址可以被支持该组播地址的一组网卡接收到。组播地址主要用在视频广播,远程唤醒(通过发一个特殊的数据包使网卡产生一个中断信号,启动电脑),游戏(多个人在局域网里联机打游戏)里等。 以下是一些具体的组播地址: 地址 范围 01:00:5E:00:00:00---01:00:5E:7F:FF:FF 用于ip地址的组播 其他组播地址跟tcp/ip无关,不做介绍。 网口地址判断图 从上图可知,网卡可以接收以下3种地址的数据包: 第一种 目的地址跟自己的网卡地址是一样的数据包 第二种 目的地址为FF:FF:FF:FF:FF:FF广播地址的数据包 第三种 目的地址为跟自己的组播地址范围相同的数据包 那么在以太网的应用当中,如果你希望你的数据包只发给一个网卡,目的地址用对方的网卡地址 如果你想把数据包发给所有的网卡,目的地址用广播地址 如果你想把数据包发给一组网卡,目的地址用组播地址。 rtl8019跟网卡地址有关的寄存器: 物理地址寄存器,位于page1,共6个字节,这就是网卡的地址,复位之后该6个寄存器的值是不定的。 要 由用户将网卡地址写入到该6个寄存器中,以后网卡接收到的数据包,会将数据包的目的地址跟这6个寄存器的值进行比较,结果相同的数据包被接收下来。上电复 位时从93c46读入的网卡地址不会自动写入到这里,而是放在rtl8019as的内存地址 0000H,0002H,0004H,0006H,0008H,000AH,0000CH里。你的程序要从这6个内存地址里读出网卡地址,写入到 PAR0-5 共6个寄存器地址里。如果你的系统没有使用93c46来存储该网卡地址,那么要由你的软件自行产生或分配一个网卡地址,写入到6个寄存器里(比如你可以把 网卡地址存储在单片机的flash rom里,存储在24c02的eeprom里等)。 跟组播地址有关的寄存器: 为 8个寄存器,提供对组播地址的过滤。跟crc的逻辑有关。我对于该8个寄存器跟组播地址的关系不是很清楚,也没有找到相关的资料。将该8个寄存器全部写入 0FFH,可以接收所有的组播地址地数据包。全部写入0,将不接

文档评论(0)

almm118 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档