《动态主机配置协议报文的处理方法、装置和系统.pdf》由会员分享,可在线阅读,更多相关《动态主机配置协议报文的处理方法、装置和系统.pdf(26页珍藏版)》请在专利查询网上搜索。
1、(10)申请公布号 CN 103944867 A (43)申请公布日 2014.07.23 CN 103944867 A (21)申请号 201310025125.5 (22)申请日 2013.01.23 H04L 29/06(2006.01) H04L 12/801(2013.01) H04L 12/46(2006.01) (71)申请人 华为技术有限公司 地址 518129 广东省深圳市龙岗区坂田华为 总部办公楼 (72)发明人 冯江平 朱旭琪 刘丹 (74)专利代理机构 北京亿腾知识产权代理事务 所 11309 代理人 陈霁 (54) 发明名称 动态主机配置协议报文的处理方法、 装置和 。
2、系统 (57) 摘要 本发明涉及一种 DHCP 报文的处理方法、 装置 和系统。该方法包括 : 接收第一 DHCP 请求报文, 第一DHCP请求报文中携带有虚拟机的MAC地址信 息 ; 对第一 DHCP 请求报文进行解封装处理, 得到 第二 DHCP 请求报文 ; 发送第二 DHCP 请求报文至 DHCP 服务器 ; 接收 DHCP 服务器发送的第一 DHCP 响应报文 ; 其中, 第一 DHCP 响应报文为广播报文, 并且携带有分配给虚拟机的 IP 地址 ; 封装第一 DHCP 响应报文为第二 DHCP 响应报文 ; 其中, 第二 DHCP响应报文为单播报文 ; 发送第二DHCP响应报 文至。
3、对端隧道端点设备。本发明实现了隧道协议 中以单播形式发送 DHCP 响应报文, 提高了网络资 源的利用率。 (51)Int.Cl. 权利要求书 3 页 说明书 15 页 附图 7 页 (19)中华人民共和国国家知识产权局 (12)发明专利申请 权利要求书3页 说明书15页 附图7页 (10)申请公布号 CN 103944867 A CN 103944867 A 1/3 页 2 1. 一种动态主机配置协议 DHCP 报文的处理方法, 其特征在于, 所述方法包括 : 接收对端隧道端点设备发送的第一 DHCP 请求报文, 所述第一 DHCP 请求报文中携带有 虚拟机的 MAC 地址信息 ; 对所述第。
4、一 DHCP 请求报文进行解封装处理, 得到第二 DHCP 请求报文 ; 发送所述第二 DHCP 请求报文至 DHCP 服务器 ; 接收所述 DHCP 服务器根据所述第二 DHCP 请求报文发送的第一 DHCP 响应报文 ; 其中, 所述第一 DHCP 响应报文为广播报文, 并且携带有分配给所述虚拟机的 IP 地址 ; 封装所述第一 DHCP 响应报文为第二 DHCP 响应报文 ; 其中, 所述第二 DHCP 响应报文为 单播报文, 并且携带分配给所述虚拟机的所述 IP 地址 ; 发送所述第二 DHCP 响应报文至所述对端隧道端点设备。 2. 根据权利要求 1 所述的 DHCP 报文的处理方法。
5、, 其特征在于, 所述接收对端隧道端点 设备发送的第一DHCP请求报文之后, 还包括 : 在所述第一DHCP请求报文中提取并记录所述 第一 DHCP 请求报文的标识信息和所述对端隧道端点设备的地址信息。 3. 根据权利要求 2 所述的 DHCP 报文的处理方法, 其特征在于, 所述封装所述第一 DHCP 响应报文为第二 DHCP 响应报文具体为 : 根据记录的所述对端隧道端点设备的地址信息, 对 所述第一DHCP响应报文进行封装处理 ; 其中, 所述第一DHCP请求报文的标识信息与所述第 一 DHCP 响应报文的标识信息一致。 4.根据权利要求2所述的DHCP报文的处理方法, 其特征在于, 所。
6、述第一DHCP响应报文 为 DHCP ACK 报文时, 所述对所述第一 DHCP 响应报文进行封装处理之后, 还包括 : 删除所记 录的所述第一 DHCP 请求报文的标识信息和所述对端隧道端点设备的地址信息 ; 或者 所述第一 DHCP 响应报文为 DHCP Offer 报文, 并且在预设的时间间隔内没有接收到 DHCP ACK 报文时, 所述方法还包括 : 删除所记录的所述第一 DHCP 请求报文的标识信息和所 述对端隧道端点设备的地址信息。 5. 一种动态主机配置协议 DHCP 报文的处理方法, 其特征在于, 所述方法包括 : 接收对端隧道端点设备发送的第一 DHCP 响应报文, 所述第一。
7、 DHCP 响应报文中携带有 虚拟机的 IP 地址 ; 其中, 所述第一 DHCP 响应报文为 DHCP Offer 报文 ; 对所述第一 DHCP 响应报文进行解封装处理, 得到第二 DHCP 响应报文, 所述第二 DHCP 响应报文中携带有所述虚拟机的 IP 地址 ; 发送所述第二 DHCP 响应报文至所述虚拟机 ; 接收所述虚拟机根据所述第二DHCP响应报文发送的所述第一DHCP请求报文, 其中, 所 述第一 DHCP 请求报文为广播报文 ; 封装所述第一 DHCP 请求报文为第二 DHCP 请求报文 ; 其中, 所述第二 DHCP 请求报文为 单播报文 ; 发送所述第二 DHCP 请求。
8、报文至所述对端隧道端点设备。 6. 根据权利要求 5 所述的 DHCP 报文的处理方法, 其特征在于, 所述接收对端隧道端点 设备发送的第一DHCP响应报文之后, 还包括 : 在所述第一DHCP响应报文中提取并记录所述 第一 DHCP 响应报文的标识信息和所述对端隧道端点设备的地址信息。 7. 根据权利要求 6 所述的 DHCP 报文的处理方法, 其特征在于, 所述封装所述第一 DHCP 请求报文为第二 DHCP 请求报文具体为 : 根据记录的所述对端隧道端点设备的地址信息, 对 权 利 要 求 书 CN 103944867 A 2 2/3 页 3 所述第一DHCP响应报文进行封装处理 ; 其。
9、中, 所述第一DHCP请求报文的标识信息与所述第 一 DHCP 响应报文的标识信息一致。 8. 根据权利要求 6 所述的 DHCP 报文的处理方法, 其特征在于, 所述封装所述第一 DHCP 请求报文为第二 DHCP 请求报文之后, 还包括 : 在预设时间间隔内删除所记录的所述第一 DHCP 响应报文的标识信息和所述对端隧道端点设备的地址信息。 9. 一种动态主机配置协议 DHCP 报文的处理装置, 其特征在于, 所述装置包括 : 接收单元, 用于接收对端隧道端点设备发送的第一DHCP请求报文, 所述第一DHCP请求 报文中携带有虚拟机的 MAC 地址信息, 将所述第一 DHCP 请求报文传输。
10、至解封装单元 ; 所述解封装单元, 用于接收所述接收单元传输的所述第一 DHCP 请求报文, 对所述第一 DHCP请求报文进行解封装处理, 得到第二DHCP请求报文, 将所述第二DHCP请求报文传输至 发送单元 ; 所述发送单元, 用于根据所述解封装单元发送的所述第二 DHCP 请求报文, 发送所述第 二 DHCP 请求报文至 DHCP 服务器 ; 所述接收单元, 还用于接收所述 DHCP 服务器接收到所述第二 DHCP 请求报文后发送的 第一DHCP响应报文, 将所述第一DHCP响应报文传输至封装单元 ; 其中, 所述第一DHCP响应 报文为广播报文, 并且携带有分配给所述虚拟机的 IP 地。
11、址 ; 所述封装单元, 用于接收所述接收单元发送的所述第一 DHCP 响应报文, 封装所述第一 DHCP 响应报文为第二 DHCP 响应报文, 将所述第二 DHCP 响应报文传输至所述发送单元 ; 其 中, 所述第二 DHCP 响应报文为单播报文, 并且携带分配给所述虚拟机的所述 IP 地址 ; 所述发送单元, 还用于接收所述封装单元发送的所述第二DHCP响应报文DHCP报文, 发 送所述第二 DHCP 响应报文至所述对端隧道端点设备。 10. 根据权利要求 9 所述的 DHCP 报文的处理装置, 其特征在于, 所述装置还包括 : 记录 单元, 用于在所述第一 DHCP 请求报文中提取并记录所。
12、述第一 DHCP 请求报文的标识信息和 所述对端隧道端点设备的地址信息。 11. 根据权利要求 10 所述的 DHCP 报文的处理方法, 其特征在于, 所述封装单元具体用 于 : 根据记录的所述对端隧道端点设备的地址信息, 对与记录的所述第一 DHCP 请求报文的 标识信息一致的所述第一 DHCP 响应报文进行封装处理。 12. 根据权利要求 10 所述的 DHCP 报文的处理方法, 其特征在于, 所述装置还包括 : 删 除单元, 用于所述 DHCP 响应报文为 DHCP 确定 ACK 报文时, 或者所述 DHCP 响应报文为 DHCP Offer 报文并且在预设的时间间隔内没有接收到所述 D。
13、HCP ACK 报文时, 删除所记录的所述 第一 DHCP 请求报文的标识信息和所述对端隧道端点设备的地址信息。 13. 一种动态主机配置协议 DHCP 报文的处理装置, 其特征在于, 所述装置包括 : 接收单元, 用于接收对端隧道端点设备发送的第一DHCP响应报文, 所述第一DHCP响应 报文中携带有虚拟机的 IP 地址, 将所述第一 DHCP 响应报文传输至解封装单元 ; 其中, 所述 第一 DHCP 响应报文为 DHCP Offer 报文 ; 解封装单元, 用于接收所述接收单元传输的所述第一 DHCP 响应报文, 对所述第一 DHCP 响应报文进行解封装处理, 得到第二DHCP响应报文,。
14、 所述第二DHCP响应报文中携带有所述 虚拟机的 IP 地址, 将所述第二 DHCP 响应报文传输至发送单元 ; 发送单元, 用于根据所述解封装单元发送的所述第二 DHCP 响应报文, 发送所述第二 权 利 要 求 书 CN 103944867 A 3 3/3 页 4 DHCP 响应报文至所述 ; 所述接收单元, 还用于根据所述 DHCP 客户端接收到所述第二 DHCP 响应报文后发送的 所述第一 DHCP 请求报文, 其中, 所述第一 DHCP 请求报文为广播报文, 将所述第一 DHCP 请求 报文传输至封装单元 ; 封装单元, 用于接收所述接收单元发送的所述第一 DHCP 请求报文, 封装。
15、所述第一 DHCP 请求报文为第二 DHCP 请求报文, 将所述第二 DHCP 请求报文至所述发送单元 ; 其中, 所述第 二 DHCP 请求报文为单播报文 ; 所述发送单元, 还用于接收所述封装单元发送的所述第二 DHCP 请求报文, 发送所述第 二 DHCP 请求报文至所述对端隧道端点设备。 14. 根据权利要求 13 所述的 DHCP 报文的处理装置, 其特征在于, 所述装置还包括 : 记 录单元, 用于在所述第一 DHCP 响应报文中提取并记录所述第一 DHCP 响应报文的标识信息 和所述对端隧道端点设备的地址信息。 15. 根据权利要求 14 所述的 DHCP 报文的处理装置, 其特。
16、征在于, 所述封装单元具体用 于 : 根据记录的所述对端隧道端点设备的地址信息, 对与记录的所述第一 DHCP 响应报文的 标识信息一致的所述第一 DHCP 请求报文进行封装处理。 16. 根据权利要求 14 所述的 DHCP 报文的处理装置, 其特征在于, 所述装置还包括 : 删 除单元, 用于在预设时间间隔内删除所记录的所述DHCP Offer报文的标识信息和所述对端 隧道端点设备的地址信息。 17. 一种动态主机配置协议 DHCP 报文的处理系统, 其特征在于, 所述系统包括如权利 要求 9-16 任一项所述的装置。 权 利 要 求 书 CN 103944867 A 4 1/15 页 5。
17、 动态主机配置协议报文的处理方法、 装置和系统 技术领域 0001 本发明涉及通信领域, 尤其涉及一种 DHCP 报文的处理方法、 装置和系统。 背景技术 0002 在通信领域, 为了简化 IP 地址的配置操作, 防止 IP 地址的冲突, 并且由于 IP 资源 有限, 不能给每台连接到互联网上的主机配置一个固定的 IP 地址, 因此通常使用动态主机 配置协议 (Dynamic Host Configuration Protocol, DHCP) 方式对连接网络的主机配置临 时的、 唯一的 IP 地址。对于虚拟化数据中心中的虚拟机而言, 同样可以采用 DHCP 方式获取 IP 地址。 0003 。
18、DHCP 客户端与 DHCP 服务器之间的交互信息中存在大量的广播报文。在使用隧道 协议, 例如可扩展虚拟局域网 (Virtual eXtensible Local Area Network, VXLAN)/ 网络 虚拟化通用路由封装 (Network Virtualizationusing Generic Routing Encapsulation, NVGRE) 的隧道封装协议的网络中, DHCP 客户端与 DHCP 服务器之间传输的广播报文。 0004 在现有技术下, 当隧道端点设备接收到DHCP客户端发送的DHCP广播报文时, 可为 该广播报文封装VXLAN头, 该VXLAN头中配置了。
19、其他隧道端点设备的组播地址, 因此可通过 组播形式发送封装后的报文至其他隧道端点设备 ; 其他隧道端点设备可接收到相应的封装 报文并进行解封装, 解封装后在相应的组播范围内进行广播, 接收到广播报文的 DHCP 服务 器也可通过广播的形式发送响应报文至隧道端点设备, 由隧道端点设备进行封装并通过组 播形式发送封装后的响应报文至其他隧道端点设备, 对网络造成压力, 进而影响网络性能, 浪费网络资源。 发明内容 0005 本发明实施例提供了一种 DHCP 报文的处理方法、 装置和系统, 以实现隧道协议中 通过单播的形式发送 DHCP 响应报文, 降低网络流量, 提高网络资源的利用率。 0006 第。
20、一方面, 本发明实施例提供了一种 DHCP 报文的处理方法, 所述方法包括 : 0007 接收对端隧道端点设备发送的第一 DHCP 请求报文, 所述第一 DHCP 请求报文中携 带有虚拟机的 MAC 地址信息 ; 0008 对所述第一 DHCP 请求报文进行解封装处理, 得到第二 DHCP 请求报文 ; 0009 发送所述第二 DHCP 请求报文至 DHCP 服务器 ; 0010 接收所述DHCP服务器根据所述第二DHCP请求报文发送的第一DHCP响应报文 ; 其 中, 所述第一 DHCP 响应报文为广播报文, 并且携带有分配给所述虚拟机的 IP 地址 ; 0011 封装所述第一 DHCP 响。
21、应报文为第二 DHCP 响应报文 ; 其中, 所述第二 DHCP 响应报 文为单播报文, 并且携带分配给所述虚拟机的所述 IP 地址 ; 0012 发送所述第二 DHCP 响应报文至所述对端隧道端点设备。 0013 在第一种可能的实现方式中, 所述接收对端隧道端点设备发送的第一 DHCP 请求 报文之后, 还包括 : 在所述第一DHCP请求报文中提取并记录所述第一DHCP请求报文的标识 说 明 书 CN 103944867 A 5 2/15 页 6 信息和所述对端隧道端点设备的地址信息。 0014 结合第一方面的第一种可能的实现方式, 在第二种可能的实现方式中, 所述封装 所述第一 DHCP 。
22、响应报文为第二 DHCP 响应报文具体为 : 根据记录的所述对端隧道端点设备 的地址信息, 对所述第一 DHCP 响应报文进行封装处理 ; 其中, 所述第一 DHCP 请求报文的标 识信息与所述第一 DHCP 响应报文的标识信息一致。 0015 结合第一方面的第一种可能的实现方式, 在第三种可能的实现方式中, 所述第一 DHCP响应报文为DHCP ACK报文时, 所述对所述第一DHCP响应报文进行封装处理之后, 还包 括 : 删除所记录的所述第一 DHCP 请求报文的标识信息和所述对端隧道端点设备的地址信 息 ; 或者 0016 所述第一 DHCP 响应报文为 DHCP Offer 报文, 并。
23、且在预设的时间间隔内没有接收 到DHCP ACK报文时, 所述方法还包括 : 删除所记录的所述第一DHCP请求报文的标识信息和 所述对端隧道端点设备的地址信息。 0017 第二方面, 本发明实施例还提供了一种 DHCP 报文的处理方法, 所述方法包括 : 0018 接收对端隧道端点设备发送的第一 DHCP 响应报文, 所述第一 DHCP 响应报文中携 带有虚拟机的 IP 地址 ; 其中, 所述第一 DHCP 响应报文为 DHCP Offer 报文 ; 0019 对所述第一 DHCP 响应报文进行解封装处理, 得到第二 DHCP 响应报文, 所述第二 DHCP 响应报文中携带有所述虚拟机的 IP。
24、 地址 ; 0020 发送所述第二 DHCP 响应报文至所述虚拟机 ; 0021 接收所述虚拟机根据所述第二 DHCP 响应报文发送的所述第一 DHCP 请求报文, 其 中, 所述第一 DHCP 请求报文为广播报文 ; 0022 封装所述第一 DHCP 请求报文为第二 DHCP 请求报文 ; 其中, 所述第二 DHCP 请求报 文为单播报文 ; 0023 发送所述第二 DHCP 请求报文至所述对端隧道端点设备。 0024 在第一种可能的实现方式中, 所述接收对端隧道端点设备发送的第一 DHCP 响应 报文之后, 还包括 : 在所述第一DHCP响应报文中提取并记录所述第一DHCP响应报文的标识 。
25、信息和所述对端隧道端点设备的地址信息。 0025 结合第二方面的第一种可能的实现方式, 在第二种可能的实现方式中, 所述封装 所述第一 DHCP 请求报文为第二 DHCP 请求报文具体为 : 根据记录的所述对端隧道端点设备 的地址信息, 对所述第一 DHCP 响应报文进行封装处理 ; 其中, 所述第一 DHCP 请求报文的标 识信息与所述第一 DHCP 响应报文的标识信息一致。 0026 结合第二方面的第一种可能的实现方式, 在第三种可能的实现方式中, 所述封装 所述第一DHCP请求报文为第二DHCP请求报文之后, 还包括 : 在预设时间间隔内删除所记录 的所述第一 DHCP 响应报文的标识信。
26、息和所述对端隧道端点设备的地址信息。 0027 第三方面, 本发明实施例提供了一种 DHCP 报文的处理装置, 所述装置包括 : 0028 接收单元, 用于接收对端隧道端点设备发送的第一 DHCP 请求报文, 所述第一 DHCP 请求报文中携带有虚拟机的 MAC 地址信息, 将所述第一 DHCP 请求报文传输至解封装单元 ; 0029 所述解封装单元, 用于接收所述接收单元传输的所述第一 DHCP 请求报文, 对所述 第一 DHCP 请求报文进行解封装处理, 得到第二 DHCP 请求报文, 将所述第二 DHCP 请求报文 传输至发送单元 ; 说 明 书 CN 103944867 A 6 3/1。
27、5 页 7 0030 所述发送单元, 用于根据所述解封装单元发送的所述第二 DHCP 请求报文, 发送所 述第二 DHCP 请求报文至 DHCP 服务器 ; 0031 所述接收单元, 还用于接收所述 DHCP 服务器接收到所述第二 DHCP 请求报文后发 送的第一 DHCP 响应报文, 将所述第一 DHCP 响应报文传输至封装单元 ; 其中, 所述第一 DHCP 响应报文为广播报文, 并且携带有分配给所述虚拟机的 IP 地址 ; 0032 所述封装单元, 用于接收所述接收单元发送的所述第一 DHCP 响应报文, 封装所述 第一 DHCP 响应报文为第二 DHCP 响应报文, 将所述第二 DHC。
28、P 响应报文传输至所述发送单 元 ; 其中, 所述第二 DHCP 响应报文为单播报文, 并且携带分配给所述虚拟机的所述 IP 地 址 ; 0033 所述发送单元, 还用于接收所述封装单元发送的所述第二 DHCP 响应报文 DHCP 报 文, 发送所述第二 DHCP 响应报文至所述对端隧道端点设备。 0034 在第一种可能的实现方式中, 所述装置还包括 : 记录单元, 用于在所述第一 DHCP 请求报文中提取并记录所述第一 DHCP 请求报文的标识信息和所述对端隧道端点设备的地 址信息。 0035 结合第三方面的第一种可能的实现方式, 在第二种可能的实现方式中, 所述封装 单元具体用于 : 根据。
29、记录的所述对端隧道端点设备的地址信息, 对与记录的所述第一 DHCP 请求报文的标识信息一致的所述第一 DHCP 响应报文进行封装处理。 0036 结合第三方面的第一种可能的实现方式, 在第三种可能的实现方式中, 所述装置 还包括 : 删除单元, 用于所述 DHCP 响应报文为 DHCP 确定 ACK 报文时, 或者所述 DHCP 响应报 文为 DHCP Offer 报文并且在预设的时间间隔内没有接收到所述 DHCP ACK 报文时, 删除所 记录的所述第一 DHCP 请求报文的标识信息和所述对端隧道端点设备的地址信息。 0037 第四方面, 本发明实施例还提供了一种 DHCP 报文的处理装置。
30、, 所述装置包括 : 0038 接收单元, 用于接收对端隧道端点设备发送的第一 DHCP 响应报文, 所述第一 DHCP 响应报文中携带有虚拟机的 IP 地址, 将所述第一 DHCP 响应报文传输至解封装单元 ; 其中, 所述第一 DHCP 响应报文为 DHCP Offer 报文 ; 0039 解封装单元, 用于接收所述接收单元传输的所述第一 DHCP 响应报文, 对所述第一 DHCP响应报文进行解封装处理, 得到第二DHCP响应报文, 所述第二DHCP响应报文中携带有 所述虚拟机的 IP 地址, 将所述第二 DHCP 响应报文传输至发送单元 ; 0040 发送单元, 用于根据所述解封装单元发。
31、送的所述第二 DHCP 响应报文, 发送所述第 二 DHCP 响应报文至所述 ; 0041 所述接收单元, 还用于根据所述 DHCP 客户端接收到所述第二 DHCP 响应报文后发 送的所述第一 DHCP 请求报文, 其中, 所述第一 DHCP 请求报文为广播报文, 将所述第一 DHCP 请求报文传输至封装单元 ; 0042 封装单元, 用于接收所述接收单元发送的所述第一 DHCP 请求报文, 封装所述第一 DHCP 请求报文为第二 DHCP 请求报文, 将所述第二 DHCP 请求报文至所述发送单元 ; 其中, 所 述第二 DHCP 请求报文为单播报文 ; 0043 所述发送单元, 还用于接收所。
32、述封装单元发送的所述第二 DHCP 请求报文, 发送所 述第二 DHCP 请求报文至所述对端隧道端点设备。 0044 在第一种可能的实现方式中, 所述装置还包括 : 记录单元, 用于在所述第一 DHCP 说 明 书 CN 103944867 A 7 4/15 页 8 响应报文中提取并记录所述第一 DHCP 响应报文的标识信息和所述对端隧道端点设备的地 址信息。 0045 结合第四方面的第一种可能的实现方式, 在第二种可能的实现方式中, 所述封装 单元具体用于 : 根据记录的所述对端隧道端点设备的地址信息, 对与记录的所述第一 DHCP 响应报文的标识信息一致的所述第一 DHCP 请求报文进行封。
33、装处理。 0046 结合第四方面的第一种可能的实现方式, 在第三种可能的实现方式中, 所述装置 还包括 : 删除单元, 用于在预设时间间隔内删除所记录的所述 DHCP Offer 报文的标识信息 和所述对端隧道端点设备的地址信息。 0047 第五方面, 本发明实施例提供了一种 DHCP 报文的处理系统, 所述系统包括上述 DHCP 报文的处理装置。 0048 本发明实施例中, DHCP 客户端与 DHCP 服务器在使用隧道协议传输 DHCP 报文时, DHCP 服务器的隧道端点设备接收对端隧道端点设备发送的第一 DHCP 请求报文, 第一 DHCP 请求报文中携带有虚拟机的 MAC 地址信息 。
34、; 对第一 DHCP 请求报文进行解封装处理, 得到第 二 DHCP 请求报文 ; 发送第二 DHCP 请求报文至 DHCP 服务器 ; 接收 DHCP 服务器接收到第二 DHCP 请求报文后发送的第一 DHCP 响应报文 ; 其中, 第一 DHCP 响应报文为广播报文, 并且携 带有分配给虚拟机的 IP 地址 ; 封装第一 DHCP 响应报文为第二 DHCP 响应报文 ; 其中, 第二 DHCP 响应报文为单播报文, 并且携带分配给虚拟机的 IP 地址 ; 发送第二 DHCP 响应报文至 对端隧道端点设备。由此, 本发明实施例实现了隧道协议中 DHCP 服务器的隧道端点设备通 过单播的形式发。
35、送 DHCP 响应报文, 降低网络流量, 提高网络资源的利用率。 附图说明 0049 图 1 为本发明实施例提供的一种 DHCP 报文的处理方法所应用的场景示意图 ; 0050 图 2 为本发明实施例提供的另一 DHCP 报文的处理方法所应用的场景示意图 ; 0051 图 3 为本发明实施例提供的另一 DHCP 报文的处理方法所应用的场景示意图 0052 图 4 为本发明实施例提供的一种 DHCP 报文的处理方法流程图 ; 0053 图 5 为本发明实施例提供的另一 DHCP 报文的处理方法流程图 ; 0054 图 6 为本发明实施例提供的一种隧道协议中 DHCP 报文的处理方法的信息交互 图。
36、 ; 0055 图 7 为本发明实施例提供的一种 DHCP 报文的处理装置示意图 ; 0056 图 8 为本发明实施例提供的另一 DHCP 报文的处理装置示意图。 具体实施方式 0057 以下描述中, 为了说明而不是为了限定, 提出了诸如特定系统结构、 接口、 技术之 类的具体细节, 以便透切理解本发明。然而, 本领域的技术人员应当清楚, 在没有这些具体 细节的其它实施例中也可以实现本发明。 在其它情况中, 省略对众所周知的装置、 电路以及 方法的详细说明, 以免不必要的细节妨碍本发明的描述。 0058 本发明实施例提供的 DHCP 报文的处理方法在实际应用时, 作为一种新的 DHCP 报 文。
37、的处理方法可应用于 DHCP 客户端和 DHCP 服务器在同一个可扩展虚拟局域网的场景, 或 DHCP 客户端和 DHCP 服务器在不同的可扩展虚拟局域网的场景, 或 DHCP 客户端在可扩展虚 说 明 书 CN 103944867 A 8 5/15 页 9 拟局域网但是 DHCP 在虚拟机局域网的场景。图 1 为本发明实施例提供的一种 DHCP 报文的 处理方法所应用的场景示意图。 如图1所示, DHCP客户端和DHCP服务器在同一个可扩展虚 拟局域网中, DHCP 客户端为位于服务器 A 中的虚拟机 1, 并且服务器 A 中部署了一个可扩展 虚拟局域网 VXLAN1, 虚拟机 1 和其他虚。
38、拟机的通信要通过服务器 A 中的可扩展虚拟局域网 的隧道端点 (VXLAN Tunnel End Point, VTEP) 设备, 即 VTEP1 ; 而 DHCP 服务器为位于服务 器B中的虚拟机2, 并且虚拟机2也加入了VXLAN1中, 虚拟机2和其他虚拟机的通信都要通 过服务器 B 中的 VTEP2。当虚拟机 1 发出 DHCP 请求报文时, VTEP1 将对该 DHCP 请求报文封 装 VXLAN 头, 并按照组播地址或对端 VTEP 地址转发封装后的 DHCP 请求报文, 其中, 封装后 的 DHCP 请求报文携带虚拟机 1 的 MAC 地址 ; 其中与 VTEP1 属于同一个 VX。
39、LAN 的 VTEP2 对封 装后的DHCP请求报文进行解封装后可发送到虚拟机2, 并且可以记录该封装后的DHCP请求 报文的源 VTEP 地址, 虚拟机 2 接收到 DHCP 请求报文后, 可发送 DHCP 响应报文至 VTEP2, 其 中, DHCP 响应报文为广播报文。由 VTEP2 根据记录的源 VTEP 地址, 即 VTEP1 的地址对 DHCP 响应报文封装VXLAN头并以单播的方式发送封装后的DHCP响应报文至VTEP1。 由此降低了 DHCP 报文的网络流量, 提高了网络资源的利用率。 0059 图 2 为本发明实施例提供的另一 DHCP 报文的处理方法所应用的场景示意图。如 。
40、图 2 所示, DHCP 客户端为位于部署了 VXLAN1 的服务器 A 的虚拟机 1, DHCP 服务器为位于 部署了 VXLAN2 的服务器 B 的虚拟机 2, 虚拟机 1 和其他虚拟机的通信要通过服务器 A 中的 VTEP1, 虚拟机 2 和其他虚拟机的通信都要通过服务器 B 中的 VTEP2。当虚拟机 1 发出 DHCP 请求报文时, VTEP1 将对该 DHCP 请求报文封装 VXLAN 头, 并按照组播地址或对端 VTEP 地址 转发封装后的 DHCP 请求报文, 其中, 封装后的 DHCP 请求报文携带虚拟机 1 的 MAC 地址 ; 如 果转发地址为属于不同于VXLAN1的VX。
41、LAN, 则网关中的VTEP3将对该封装后的DHCP请求报 文进行解封装并记录该封装后的 DHCP 请求报文的源 VTEP 地址, 即 VTEP1 的地址, 网关中的 DHCP 中继根据配置信息获取虚拟机 2 的位置信息, VTEP3 根据该虚拟机 2 的位置信息重新 封装 VXLAN 头并转发重新封装后的 DHCP 请求报文到 VXLAN2 的 VTEP2, VTEP2 接收到重新封 装后的 DHCP 请求报文后进行解封装处理, VTEP2 对重新封装后的 DHCP 请求报文进行解封 装后发送到虚拟机 2, 虚拟机 2 接收到 VTEP2 解封装后的 DHCP 请求报文后, 可发送 DHCP。
42、 响 应报文至 VTEP2, VTEP2 对 DHCP 响应报文封装 VXLAN 头并以单播的方式发送封装后的 DHCP 响应报文至 VTEP3, VTEP3 根据记录的 VTEP1 的地址单播发送 DHCP 响应报文至 VTEP1。由 此降低了 DHCP 报文的网络流量, 提高了网络资源的利用率。 0060 图3为本发明实施例提供的另一DHCP报文的处理方法所应用的场景示意图。 如图 3所示, DHCP客户端为位于部署了VXLAN1的服务器A的虚拟机1, DHCP服务器位于非VXLAN 网络中, 虚拟机 1 和其他虚拟机的通信要通过服务器 A 中的 VTEP1。虚拟机 1 发出 DHCP 请。
43、 求报文时, VTEP1 将对该 DHCP 请求报文封装 VXLAN 头, 并按照组播地址或对端 VTEP 地址转 发封装后的 DHCP 请求报文, 其中, 封装后的 DHCP 请求报文携带虚拟机 1 的 MAC 地址 ; 如果 转发地址为不属于 VXLAN, 则网关中的 VTEP3 将对该封装后的 DHCP 请求报文进行解封装并 记录该封装后的 DHCP 请求报文的源 VTEP 地址, 即 VTEP1 的地址, 而网关中的 DHCP 中继根 据配置信息获取 DHCP 服务器的位置信息, VTEP3 则根据该 DHCP 服务器的位置信息对 DHCP 请求报文进行处理并转发到 DHCP 服务器,。
44、 DHCP 服务器接收到 VTEP3 处理后的 DHCP 请求报 文后, 可通过发送 DHCP 响应报文到网关, DHCP 响应报文为广播报文, 网关中的 VTEP3 根据 说 明 书 CN 103944867 A 9 6/15 页 10 记录的源 VTEP 地址, 即以 VTEP1 的地址对 DHCP 响应报文封装 VXLAN 头并以单播的方式发 送封装后的DHCP响应报文至VTEP1。 由此降低了DHCP报文的网络流量, 提高了网络资源的 利用率。 0061 上面只是描述了本发明实施例提供的DHCP报文的处理方法、 装置和系统的3种应 用场景, 但是上述场景并不用于限制本发明的保护范围。本。
45、发明实施例提供的 DHCP 报文的 处理方法、 装置和系统可以应用于隧道协议中 DHCP 报文的传输。 0062 下面的实施例主要以图 1 所述的应用场景为例进行方案的描述, 0063 图 4 为本发明实施例提供的一种 DHCP 报文的处理方法流程图。该实施例主要以 DHCP客户端与DHCP服务器位于同一个VXLAN的应用场景进行描述, 该实施例的执行主体是 DHCP 服务器的隧道端点设备, 如图 4 所示, 该实施例包括以下步骤 : 0064 步骤 401, 接收对端隧道端点设备发送的第一 DHCP 请求报文, 所述第一 DHCP 请求 报文中携带有虚拟机的 MAC 地址信息。 0065 本。
46、实施例中, DHCP 客户端为位于服务器 A 中的虚拟机 1, 并且服务器 A 中部署了 VXLAN1, 服务器 A 中 VXLAN1 的隧道端点为 VTEP1, DHCP 服务器为位于服务器 B 中的虚拟机 2, 并且服务器 B 中也部署了 VXLAN1, 服务器 B 中该 VXLAN1 的隧道端点为 VTEP2。 0066 具体地, VTEP1 接收到虚拟机 1 发送的 DHCP 请求报文后, 对虚拟机 1 发送的 DHCP 请求报文封装 VXLAN 头和外层封装头, 得到第一 DHCP 请求报文 ; 其中, 封装后的 DHCP 请求报文携带虚拟机 1 的 MAC 地址, VXLAN 头中。
47、包括 VXLAN 网络标识 (VXLAN Network Indentifier, VNI) 信息和 Flag 标识信息, 外层封装头包括 VTEP1 的 MAC 地址和 IP 地址, 以及组播组的 MAC 地址信息和 IP 地址信息。 0067 VTEP1 生成第一 DHCP 请求报文后, 根据组播组的 MAC 地址信息和 IP 地址信息, 将 第一 DHCP 请求报文转发到组播组内的所有 VTEP, 包括 VTEP2。 0068 步骤 402, 对所述第一 DHCP 请求报文进行解封装处理, 得到第二 DHCP 请求报文。 0069 VTEP2 接收到第一 DHCP 请求报文后, 可从第一。
48、 DHCP 请求报文中提取 XID 标识信 息, 从第一 DHCP 请求报文的外层封装头中提取 VTEP1 的 MAC 地址和 IP 地址。 0070 VTEP2 接收到第一 DHCP 请求报文后, 还对该第一 DHCP 请求报文进行解封装处理, 得到第二 DHCP 请求报文。 0071 提取 DHCP 报文的 XID 标识信息和 VTEP1 的 MAC 地址和 IP 地址后, 可在数据库中 或者哈希表中保存 XID 标识信息和 VTEP1 的地址信息的映射关系。 0072 步骤 403, 发送所述第二 DHCP 请求报文至 DHCP 服务器。 0073 VTEP2解封装得到第二DHCP请求报。
49、文后, 在VTEP2的VXLAN1范围内广播发送第二 DHCP 请求报文。 0074 步骤 404, 根据所述第二 DHCP 请求报文发送的第一 DHCP 响应报文 ; 其中, 所述第 一 DHCP 响应报文为广播报文, 并且携带有分配给所述虚拟机的 IP 地址。 0075 VTEP2 广播发送第二 DHCP 请求报文后, DHCP 服务器, 即虚拟机 2 接收到该第二 DHCP 请求报文后, 会做出响应, 即发送第一 DHCP 响应报文。 0076 其中, 第一 DHCP 响应报文中 IP 头中的源 IP 地址为虚拟机 2 的 IP 地址, Ethernet 头中的源 MAC 地址为虚拟机 2 的 MAC 地址。该 DHCP 响应报文的 XID 标识信息与 DHCP 请求 报文的 XID 标识信息一致。该第一 DHCP 响应报文携带有虚拟机 2 为虚拟机 1 分配的 IP 地 说 明 书 CN 103944867 A 10 7/15 页 11 址信息。 0077 虚拟机 2 发。