以太网各种协议详解

本文详细介绍了以太网中的DHCP协议,包括报文格式和工作流程。同时,还讲解了ARP协议的作用,即如何将IP地址解析为MAC地址,以及ICMP(PING)协议在确定网络连接成功中的应用。
摘要由CSDN通过智能技术生成

板子处于复位状态时,先做好一系列的准备工作。

 1、从EEROM中读取板子的MAC 地址(事先已经写在地址0xFA to 0xFF 中了)。

2、配置PHY 寄存器,并读取该寄存器的值,检查一下,此时的寄存器配置时候是合理的(全双工,自协商等)。

3、等待片刻,使以太网稳定。随后,启动DHCP 协议,获取该电路板的IP地址。其中,PC 机是服务机,板子是客户机。

4、获得板子的IP地址之后,就可以正常通信了。在发送数据之前,首先确认是否ARP(IP地址和MAC地址绑定)和ping(ICMP协议,确定网络是否链接成功)是否请求成功。如果成功,就可以传输我们真正关心的数据了。

 

以太网协议  MAC 层

 

 

前导帧 : 55

帧开始: 5D

长度或类型:0x0800 表示以IP帧 ; 0x0806 表示以ARP帧 ;

 

 

 

 

 

以太网IP协议

 

版本:4 ; 头部长:5;服务类型:00;总长: UDP data + 8 UDP header + 20 IP header; time to live :80; 协议:11--UDP/IP,10--ICMP/PINGN ;

以太网校验和:在运算的时候,先设置该处的值为0,等运算结果出来之后,再把结果添加进去。

 

以太网UDP格式

 

 UDP端口有几个特殊的:68 --BOOT客户端,同时用于DHCP ,67--BOOT 服务,同时用于DHCP; 校验和:UDP 的校验和可以设置为0,如果要计算的话,比较麻烦。

 

动态主机设置协议 DHCP

 

http://zh.wikipedia.org/wiki/%E5%8A%A8%E6%80%81%E4%B8%BB%E6%9C%BA%E8%AE%BE%E7%BD%AE%E5%8D%8F%E8%AE%AE   

 

1. DHCP的报文格式

我们来介绍一下DHCP的报文格式,如图1,

OP(1)

Htype(1)

Hlen(1)

Hops(1)

Transaction  ID(4)

Seconds(2)

Flags(2)

Ciaddr(4)

Yiaddr(4)

Siaddr(4)

Giaddr(4)

Chaddr(16)

Sname(64)

File(128)

Options(variable)

(图1   DHCP的 报文格式)

l  OP:若是client送给server的封包,设为1,反向为2;

l  Htype:硬件类别,ethernet为1;

l  Hlen:硬件长度,ethernet为6;

l  Hops:若数据包需经过router传送,每站加1,若在同一网内,为0;

l  Transaction ID:事务ID,是个随机数,用于客户和服务器之间匹配请求和相应消息;

l  Seconds:由用户指定的时间,指开始地址获取和更新进行后的时间;

l  Flags:从0-15bits,最左一bit为1时表示server将以广播方式传送封包给 client,其余尚未使用;

l  Ciaddr:用户IP地址;

l  Yiaddr:客户IP地址;

l  Siaddr:用于bootstrap过程中的IP地址;

l  Gi

  • 5
    点赞
  • 46
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值