CN115567441A - 一种用于生成转发信息的方法、装置和*** - Google Patents

一种用于生成转发信息的方法、装置和*** Download PDF

Info

Publication number
CN115567441A
CN115567441A CN202211011830.5A CN202211011830A CN115567441A CN 115567441 A CN115567441 A CN 115567441A CN 202211011830 A CN202211011830 A CN 202211011830A CN 115567441 A CN115567441 A CN 115567441A
Authority
CN
China
Prior art keywords
mac
mac address
network device
converted
addresses
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
CN202211011830.5A
Other languages
English (en)
Inventor
黄调文
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Huawei Technologies Co Ltd
Original Assignee
Huawei Technologies Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Huawei Technologies Co Ltd filed Critical Huawei Technologies Co Ltd
Publication of CN115567441A publication Critical patent/CN115567441A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L61/00Network arrangements, protocols or services for addressing or naming
    • H04L61/09Mapping addresses
    • H04L61/25Mapping addresses of the same type
    • H04L61/2596Translation of addresses of the same type other than IP, e.g. translation from MAC to MAC addresses
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/28Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
    • H04L12/46Interconnection of networks
    • H04L12/4604LAN interconnection over a backbone network, e.g. Internet, Frame Relay
    • H04L12/462LAN interconnection over a bridge based backbone
    • H04L12/4625Single bridge functionality, e.g. connection of two networks over a single bridge
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/28Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
    • H04L12/46Interconnection of networks
    • H04L12/4633Interconnection of networks using encapsulation techniques, e.g. tunneling
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/28Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
    • H04L12/46Interconnection of networks
    • H04L12/4641Virtual LANs, VLANs, e.g. virtual private networks [VPN]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/54Organization of routing tables
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/66Layer 2 routing, e.g. in Ethernet based MAN's
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/72Routing based on the source address
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L61/00Network arrangements, protocols or services for addressing or naming
    • H04L61/09Mapping addresses
    • H04L61/25Mapping addresses of the same type
    • H04L61/2503Translation of Internet protocol [IP] addresses
    • H04L61/2592Translation of Internet protocol [IP] addresses using tunnelling or encapsulation
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L2101/00Indexing scheme associated with group H04L61/00
    • H04L2101/60Types of network addresses
    • H04L2101/618Details of network addresses
    • H04L2101/622Layer-2 addresses, e.g. medium access control [MAC] addresses
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L2101/00Indexing scheme associated with group H04L61/00
    • H04L2101/60Types of network addresses
    • H04L2101/695Types of network addresses using masks or ranges of addresses
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/02Topology update or discovery
    • H04L45/021Ensuring consistency of routing table updates, e.g. by using epoch numbers
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/74Address processing for routing
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L61/00Network arrangements, protocols or services for addressing or naming
    • H04L61/09Mapping addresses
    • H04L61/10Mapping addresses of different types
    • H04L61/103Mapping addresses of different types across network layers, e.g. resolution of network layer into physical layer addresses or address resolution protocol [ARP]

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computer Security & Cryptography (AREA)
  • Power Engineering (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)
  • Small-Scale Networks (AREA)

Abstract

一种用于生成转发信息的方法、装置及***。该方法包括:第一网络设备接收n个报文,其中,n个报文包括n个介质访问控制(MAC)地址,n个报文的源MAC地址分别为n个MAC地址;第一网络设备基于n个MAC地址确定n个经转换的MAC地址,其中n个MAC地址与n个经转换的MAC地址一一对应,n个经转换的MAC地址属于第一MAC地址段;第一网络设备保存n个MAC地址与n个经转换的MAC地址的对应关系;第一网络设备向第二网络设备发送第一MAC地址段。本方法减少了诸如网络侧的供应商边缘路由器等设备本地维护的MAC路由表项,节约了设备存储资源,提高了查询效率,并且减轻了维护MAC路由表项的压力。

Description

一种用于生成转发信息的方法、装置和***
本申请是分案申请,原申请的申请号是202010027651.5,原申请日是2020年1月10日,原申请的全部内容通过引用结合在本申请中。
技术领域
本申请涉及通信技术领域,特别涉及一种用于生成转发信息的方法、装置和***。
背景技术
随着通信技术的发展,以太网虚拟专用网络(Ethernet Virtual PrivateNetwork,EVPN)得到了广泛的应用。EVPN网络中用于转发报文的***可以包括:用户侧的供应商边缘(user-end provider edge,UPE)网络设备(以下简称UPE设备)和网络侧的供应商边缘(network provider edge,NPE)网络设备(以下简称NPE设备)。
UPE设备能够接收其连接的至少一个用户设备生成的请求报文,每个用户设备生成的请求报文中携带有该用户设备的媒体接入控制(Media Access Control,MAC)地址。UPE设备基于该至少一个用户设备的MAC地址,生成对应的MAC路由。UPE设备将生成的MAC路由发送至NPE设备,以使NPE设备对这些MAC路由进行学习。NPE设备基于学习到的MAC路由转发报文。
但是,UPE设备连接的用户设备的数量往往较多,导致NPE设备需要学习并维护的MAC路由较多,进而导致NPE设备本地维护MAC路由的压力较大,并且造成较多的资源消耗。
发明内容
本申请提供了一种用于生成转发信息的方法、装置和***,可以明显减少诸如NPE设备等网络设备本地学习和维护的MAC路由数量,节约存储资源,提高查询效率,减轻设备压力。
第一方面,提供了一种用于生成转发信息的方法,该方法包括:第一网络设备接收n个报文,其中,该n个报文包括n个介质访问控制MAC地址,n个报文的源MAC地址分别为n个MAC地址,n为大于或等于2的整数;第一网络设备基于n个MAC地址确定n个经转换的MAC地址,其中n个MAC地址与n个经转换的MAC地址一一对应,n个经转换的MAC地址属于第一MAC地址段;第一网络设备保存n个MAC地址与n个经转换的MAC地址的对应关系;第一网络设备向第二网络设备发送第一MAC地址段。
其中,该n个报文可以是第一网络设备(如UPE设备)连续接收到的多个报文,也可以是第一网络设备连续接收到的多个报文中的部分报文,本申请对此不作特别限定。该第一MAC地址段包括多个MAC地址。可选地,该第一MAC地址段可以采用固定长度的比特串表示,且该固定长度的比特串包括固定比特子串部分和可变比特子串部分,其中固定比特子串部分可称为掩码,例如固定比特子串中的每一位均取值为1。该第一MAC地址段中的多个MAC地址的掩码,即固定比特子串部分相同,以便于实现所述多个MAC地址的聚合。多个MAC地址中除掩码之外的可变比特子串部分互不相同,以对所述多个MAC地址进行区分。
第一网络设备可以基于n个MAC地址中的每个MAC地址,在上述第一MAC地址段中筛选一个MAC地址,作为与每个MAC地址对应的经转换的MAC地址。
需要说明的是,第一网络设备根据接收的n个报文中携带的n个MAC地址,确定与该n个MAC地址对应的n个经转换的MAC地址,该n个经转换的MAC地址属于第一MAC地址段。第一网络设备保存该n个MAC地址与n个经转换的MAC地址的一一对应关系,并向第二网络设备发送第一MAC地址段。所述第一MAC地址段例如可以包括于聚合MAC路由中,从而使得第二网络设备(如NPE设备),无需学习与n个MAC地址对应的n个MAC路由,而只需学习一个聚合MAC路由即可。由此,第二网络设备学习的MAC路由数量明显降低,减轻了第二网络设备的存储压力,节约了网络资源。
可选地,该方法还包括:第一网络设备基于n个报文和n个经转换的MAC地址获得n个更新后的报文,其中n个更新后的报文的源MAC地址分别为n个经转换的MAC地址;第一网络设备发送n个更新后的报文。第一网络设备可以将n个更新前的报文中的源MAC地址均替换为对应的经转换的MAC地址,以得到n个更新后的报文。
通过将报文中的源MAC地址替换为对应的经转换的MAC地址,远端网络设备能够学习到所述经转换的MAC地址,以实现基于所述经转换的MAC地址的报文收发。
可选地,该方法还包括:第一网络设备接收第一报文,第一报文的第一源MAC地址属于n个报文的n个MAC地址;第一网络设备基于第一报文和与第一源MAC地址对应的第一经转换的MAC地址获得第一经转换的报文,其中第一经转换的报文的源MAC地址为第一经转换的MAC地址,第一经转换的MAC地址属于n个经转换的MAC地址;第一网络设备发送第一经转换的报文。
该第一报文也可以是用户设备向第一网络设备发送的请求报文,且第一网络设备已建立用户设备对应的MAC地址与经转换的MAC地址之间的对应关系。第一网络设备在接收到该第一报文后,可以提取第一报文中的第一源MAC地址,再基于已保存的n个MAC地址与n个经转换的MAC地址的对应关系,查找第一源MAC地址对应的第一经转换的MAC地址,之后,将该第一报文中的第一源MAC地址替换为第一经转换的MAC地址,以得到第一经转换的报文,从而实现报文基于经转换的MAC地址的收发。
可选地,第一报文的第一源MAC地址为外层源MAC地址,第一报文还包括内层源MAC地址,内层源MAC地址与外层源MAC地址相同,第一网络设备基于第一报文和与第一源MAC地址对应的第一经转换的MAC地址获得第一经转换的报文,包括:第一网络设备分别将外层源MAC地址和内层源MAC地址替换为与第一源MAC地址对应的第一经转换的MAC地址,以获得第一经转换的报文。
第一网络设备在接收到诸如地址解析协议(Address Resolution Protocol,ARP)等类型的报文时,需将报文中的内外层源MAC地址均替换为经转换的MAC地址,以保证报文转发的准确性,避免发生丢包等问题。
可选地,该方法还包括:第一网络设备接收第二报文,其中,第二报文的目的MAC地址包括第二经转换的MAC地址,第二经转换的MAC地址属于n个经转换的MAC地址;第一网络设备基于第二报文和与第二经转换的MAC地址对应的第二MAC地址获得第二经转换的报文,其中第二经转换的报文的目的MAC地址为第二MAC地址,第二MAC地址属于n个MAC地址;第一网络设备发送第二经转换的报文。
远端网络设备将经转换的MAC地址作为目的MAC地址向用户设备发送报文,作为转发设备的第一网络设备在接收到所述报文时,能够基于本地保存的经转换的MAC地址和原始MAC地址之间的对应关系,将目的MAC地址替换为原始MAC地址,以完成报文向用户设备的转发。
可选地,第一MAC地址段属于第一网络设备向第二网络设备发送的第一聚合MAC路由,第一聚合MAC路由还包括第一网络设备的IP地址。该IP地址可以使得接收所述第一MAC路由的网络设备确定与所述IP地址对应的端口,从而使得所述网络设备通过所述端口将报文成功发送至第一网络设备。
可选地,第一MAC地址段中的MAC地址的数量大于或等于第一网络设备连接的用户设备的数量。
第一MAC地址段可以对应于多个MAC地址。第一网络设备在规划第一MAC地址段可对应的MAC地址的数量时,可以考虑第一网络设备连接的用户设备的数量。例如,第一网络设备可以基于业务类型和居住区域等确定用户设备的数量。在一些其他情形中,第一网络设备也可以基于其他共同特性或仅根据数量规模等确定用户设备的数量。之后,第一网络设备根据确定的用户设备的数量生成相应的第一MAC地址段,以保证第一MAC地址段能够容纳相应数量的用户设备所对应的MAC地址,从而提高网络设备所规划地址的易用性和合理性。
可选地,该方法还包括:第一网络设备接收m个报文,其中,m个报文包括m个介质访问控制MAC地址,m个报文的源MAC地址分别为m个MAC地址,m为大于或等于2的整数;第一网络设备基于m个MAC地址确定m个经转换的MAC地址,其中m个MAC地址与m个经转换的MAC地址一一对应,m个经转换的MAC地址属于第二MAC地址段;第一网络设备保存m个MAC地址与m个经转换的MAC地址的对应关系;第一网络设备向第二网络设备或第三网络设备发送第二MAC地址段。
第二方面,提供了一种用于生成转发信息的方法,该方法包括:第一网络设备接收第二网络设备发送的MAC地址段;第一网络设备生成转发信息,转发信息包括MAC地址段;第一网络设备接收第三网络设备发送的报文,报文包括目的MAC地址,目的MAC地址属于所述MAC地址段;第一网络设备基于所述目的MAC地址和所述转发信息,向第二网络设备转发接收到的报文。
第一网络设备(如NPE设备),可以基于报文的目的MAC地址确定相应的转发信息,之后再基于转发信息实现报文向第二网络设备的转发。所述目的MAC地址例如可以是前述第一方面中属于第一MAC地址段或第二MAC地址段的经转换的MAC地址。
可选地,第一网络设备基于目的MAC地址和转发信息,向第二网络设备转发接收到的报文包括:第一网络设备基于目的MAC地址和最长匹配原则查询转发信息。第一网络设备基于转发信息向第二网络设备转发报文,转发信息的MAC地址段与目的MAC地址相匹配。所述转发信息可以是包括MAC地址段的MAC路由,所述MAC路由可以存储在MAC路由表中。最长匹配原则指的是将目的MAC地址与第一网络设备维护的MAC路由表中的各个MAC路由进行逐位匹配,直到找到匹配度最长的路由。第一网络设备基于最长匹配原则既可以查找精确匹配的路由,如第一网络设备维护的本地MAC路由,也可以查找非精确匹配的路由,如包括MAC地址段的MAC路由,从而可以在保持传统机制的基础上实现基于聚合MAC路由的报文转发。
可选地,转发信息还包括端口,端口基于第二网络设备的IP地址确定,第一网络设备基于转发信息向第二网络设备转发报文,包括:第一网络设备通过端口转发报文。
第三方面,提供了一种用于生成转发信息的***,所述***包括第一网络设备和第二网络设备,
所述第一网络设备用于:
接收n个报文,其中,所述n个报文包括n个介质访问控制MAC地址,所述n个报文的源MAC地址分别为所述n个MAC地址,n为大于或等于2的整数;
基于所述n个MAC地址确定n个经转换的MAC地址,其中所述n个MAC地址与n个经转换的MAC地址一一对应,所述n个经转换的MAC地址属于第一MAC地址段;
保存所述n个MAC地址与所述n个经转换的MAC地址的对应关系;
向第二网络设备发送所述第一MAC地址段;
所述第二网络设备用于:
接收所述第一MAC地址段;
生成第一转发信息,所述第一转发信息包括第一MAC地址段;
基于所述第一转发信息和接收到的第一报文的第一目的MAC地址转发所述第一报文,所述第一目的MAC地址属于所述第一MAC地址段。
通过上述技术方案,在保证***能够正常完成报文转发的基础上,明显降低第二网络设备学习的MAC路由数量,减轻第二网络设备的存储压力,节约了网络资源。
可选地,所述第一网络设备还用于:
基于所述n个报文和所述n个经转换的MAC地址获得n个更新后的报文,其中所述n个更新后的报文的源MAC地址分别为所述n个经转换的MAC地址;
发送所述n个更新后的报文。
可选地,所述第一网络设备还用于:
接收第二报文,所述第二报文的第二源MAC地址属于所述n个报文的所述n个MAC地址;
基于所述第二报文和与所述第二源MAC地址对应的第二经转换的MAC地址获得第二经转换的报文,其中所述第二经转换的报文的源MAC地址为所述第二经转换的MAC地址,所述第二经转换的MAC地址属于所述n个经转换的MAC地址;
发送所述第二经转换的报文。
可选地,所述第二报文的第二源MAC地址为外层源MAC地址,所述第二报文还包括内层源MAC地址,所述内层源MAC地址与所述外层源MAC地址相同,所述基于所述第二报文和与所述第二源MAC地址对应的第二经转换的MAC地址获得第二经转换的报文,包括:
分别将所述外层源MAC地址和所述内层源MAC地址替换为与所述第二源MAC地址对应的第二经转换的MAC地址,以获得第二经转换的报文。
可选地,所述第一网络设备还用于:
从所述第二网络设备接收所述第一报文,其中,所述第一报文的目的MAC地址包括第一经转换的MAC地址,所述第一经转换的MAC地址属于所述n个经转换的MAC地址;
基于所述第一报文和与所述第一经转换的MAC地址对应的第一MAC地址获得第一经转换的报文,其中所述第一经转换的报文的目的MAC地址为所述第一MAC地址,所述第一MAC地址属于所述n个MAC地址;发送所述第一经转换的报文。
可选地,所述第一MAC地址段属于第一网络设备向第二网络设备发送的第一聚合MAC路由,所述第一聚合MAC路由还可以包括第一网络设备的IP地址。
可选地,所述第一MAC地址段中的MAC地址的数量大于或等于所述第一网络设备连接的用户设备的数量。
可选地,基于所述第一转发信息和接收到的第一报文的第一目的MAC地址转发所述第一报文,包括:
基于所述第一目的MAC地址和最长匹配原则查询包括所述第一MAC地址段的第一转发信息;
基于所述第一转发信息向所述第一网络设备转发接收到的第一报文,所述第一MAC地址段与所述第一目的MAC地址相匹配。
可选地,所述第一转发信息还包括端口,所述端口基于所述第一网络设备的IP地址确定,所述第二网络设备基于包括所述第一MAC地址段的转发信息向所述第一网络设备转发接收到的第一报文,包括:所述第二网络设备通过端口转发接收到的第一报文。
可选地,所述第一网络设备还用于:
接收m个报文,其中,所述m个报文包括m个介质访问控制MAC地址,所述m个报文的源MAC地址分别为所述m个MAC地址,m为大于或等于2的整数;
基于所述m个MAC地址确定m个经转换的MAC地址,其中所述m个MAC地址与m个经转换的MAC地址一一对应,所述m个经转换的MAC地址属于第二MAC地址段;
保存所述m个MAC地址与所述m个经转换的MAC地址的对应关系;
向所述第二网络设备或第三网络设备发送所述第二MAC地址段。
所述第二网络设备或所述第三网络设备用于:
接收所述第二MAC地址段;
生成包括所述第二MAC地址段的第二转发信息;
基于包括所述第二MAC地址段的第二转发信息转发接收到的第三报文,所述第三报文的目的MAC地址属于所述第二MAC地址段。
第四方面,提供了一种用于生成转发信息的装置,所述装置包括第一接收模块,用于接收n个报文,其中,所述n个报文包括n个介质访问控制MAC地址,所述n个报文的源MAC地址分别为所述n个MAC地址,n为大于或等于2的整数;第一确定模块,用于基于所述n个MAC地址确定n个经转换的MAC地址,其中所述n个MAC地址与n个经转换的MAC地址一一对应,所述n个经转换的MAC地址属于第一MAC地址段;第一保存模块,用于保存所述n个MAC地址与所述n个经转换的MAC地址的对应关系;第一发送模块,用于向第一网络设备发送所述第一MAC地址段。
所述用于生成转发信息的装置通过向网络设备发送第一聚合MAC路由,使得诸如NPE等网络设备无需学习与n个MAC地址对应的n个MAC路由,而只需学习一个聚合MAC路由即可。由此,网络设备学习的MAC路由数量明显降低,减轻了网络设备的存储压力,节约了网络资源。
可选地,所述用于生成转发信息的装置还包括:第一获取模块,用于基于所述n个报文和所述n个经转换的MAC地址获得n个更新后的报文,其中所述n个更新后的报文的源MAC地址分别为所述n个经转换的MAC地址;第二发送模块,用于发送所述n个更新后的报文。
通过将报文中的源MAC地址替换为对应的经转换的MAC地址,远端网络设备能够学习到所述经转换的MAC地址,以实现基于所述经转换的MAC地址的报文收发。
可选地,所述用于生成转发信息的装置还包括:第二接收模块,用于接收第一报文,所述第一报文的第一源MAC地址属于所述n个报文的所述n个MAC地址;所述第一获取模块,还用于基于所述第一报文和与所述第一源MAC地址对应的第一经转换的MAC地址获得第一经转换的报文,其中所述第一经转换的报文的源MAC地址为所述第一经转换的MAC地址,所述第一经转换的MAC地址属于所述n个经转换的MAC地址;第三发送模块,用于发送所述第一经转换的报文。
在接收到该第一报文后,所述用于生成转发信息的装置可以提取第一报文中的第一源MAC地址,再基于已保存的n个MAC地址与n个经转换的MAC地址的对应关系,查找第一源MAC地址对应的第一经转换的MAC地址,之后,将该第一报文中的第一源MAC地址替换为第一经转换的MAC地址,以得到第一经转换的报文,从而实现报文基于经转换的MAC地址的收发。
可选地,所述第一报文的第一源MAC地址为外层源MAC地址,所述第一报文还包括内层源MAC地址,所述内层源MAC地址与所述外层源MAC地址相同,所述第一获取模块,还用于分别将所述外层源MAC地址和所述内层源MAC地址替换为与所述第一源MAC地址对应的第一经转换的MAC地址,以获得第一经转换的报文。
在接收到诸如ARP等类型的报文时,所述用于生成转发信息的装置需将报文中的内外层源MAC地址均替换为经转换的MAC地址,以保证报文转发的准确性,避免发生丢包等问题。
可选地,所述用于生成转发信息的装置还包括第三接收模块,用于接收第二报文,其中,所述第二报文的目的MAC地址包括第二经转换的MAC地址,所述第二经转换的MAC地址属于所述n个经转换的MAC地址;第二获取模块,用于基于所述第二报文和与所述第二经转换的MAC地址对应的第二MAC地址获得第二经转换的报文,其中所述第二经转换的报文的目的MAC地址为所述第二MAC地址,所述第二MAC地址属于所述n个MAC地址;第四发送模块,用于发送所述第二经转换的报文。
远端网络设备将经转换的MAC地址作为目的MAC地址向用户设备发送报文,具有转发功能的所述用于生成转发信息的装置在接收到所述报文时,能够基于本地保存的经转换的MAC地址和原始MAC地址之间的对应关系,将目的MAC地址替换为原始MAC地址,以完成报文向用户设备的转发。
可选地,所述第一MAC地址段属于所述第一网络设备向所述第二网络设备发送的第一聚合MAC路由,所述第一聚合MAC路由还包括所述第一网络设备的IP地址。该IP地址可以使得接收所述第一MAC路由的网络设备确定与所述IP地址对应的端口,从而使得所述网络设备通过所述端口将报文成功发送至所述用于生成转发信息的装置。
可选地,所述第一MAC地址段中的MAC地址的数量大于或等于所述第一网络设备连接的用户设备的数量。
所述用于生成转发信息的装置根据确定的用户设备的数量生成相应的第一MAC地址段,以保证第一MAC地址段能够容纳相应数量的用户设备所对应的MAC地址,从而提高装置所规划地址的易用性和合理性。所述用户设备的数量例如可以基于业务类型和居住区域等确定。
可选地,所述用于生成转发信息的装置还包括:第四接收模块,用于接收m个报文,其中,所述m个报文包括m个介质访问控制MAC地址,所述m个报文的源MAC地址分别为所述m个MAC地址,m为大于或等于2的整数;第二确定模块,用于基于所述m个MAC地址确定m个经转换的MAC地址,其中所述m个MAC地址与m个经转换的MAC地址一一对应,所述m个经转换的MAC地址属于第二MAC地址段;第二保存模块,用于保存所述m个MAC地址与所述m个经转换的MAC地址的对应关系;第五发送模块,用于向所述第一网络设备或第二网络设备发送所述第二MAC地址段。
所述用于生成转发信息的装置中可以包括多个MAC地址段,不同的MAC地址段可以包括不同的多个MAC地址。示例地,第一网络设备可以将申请不同业务类型的用户设备的MAC地址分别划分到不同的MAC地址段,或者再例如,所述装置可以将属于不同居住区域的用户设备的MAC地址划分到不同的MAC地址段,从而方便用户设备的管理和报文的转发。
第五方面,提供了一种用于生成转发信息的装置,所述用于生成转发信息的装置包括:第一接收模块,用于接收第一网络设备发送的MAC地址段;生成模块,用于生成转发信息,所述转发信息包括所述MAC地址段;第二接收模块,用于接收第二网络设备发送的报文,所述报文包括目的MAC地址,所述目的MAC地址属于所述MAC地址段;转发模块,用于基于所述目的MAC地址和所述转发信息,向所述第一网络设备转发接收到的所述报文。
所述用于生成转发信息的装置可以基于报文的目的MAC地址确定相应的转发信息,之后再基于报文中的目的MAC地址和转发信息将报文发送至第一网络设备。所述目的MAC地址例如可以是前述第一方面中属于第一MAC地址段或第二MAC地址段的经转换的MAC地址。
可选地,所述转发模块用于基于所述目的MAC地址和最长匹配原则查询所述转发信息,基于所述转发信息向所述第一网络设备转发所述报文,所述转发信息的所述MAC地址段与所述目的MAC地址相匹配。
所述用于生成转发信息的装置基于最长匹配原则既可以查找精确匹配的路由,如该用于生成转发信息的装置维护的本地路由,也可以查找非精确匹配的路由,如第一网络设备发送的包括MAC地址段的MAC路由,从而可以在保持传统机制的基础上实现基于聚合MAC路由的报文转发。
可选地,所述转发信息还包括端口,所述端口基于所述第二网络设备的IP地址确定,所述转发模块用于:通过所述端口转发所述报文。
第六方面,提供了一种网络设备,所述网络设备包括:存储器和处理器;其中,所述处理器用于调用所述存储器中存储的程序,以使得所述网络设备执行如第一方面任一设计所述的用于生成转发信息的方法。
第七方面,提供了一种网络设备,所述网络设备包括:存储器和处理器;其中,所述处理器用于调用所述存储器中存储的程序,以使得所述网络设备执行如第二方面任一设计所述的用于生成转发信息的方法。
第八方面,提供了一种网络设备,包括:处理器;处理器用于与存储器耦合,并读取存储器中的指令之后,根据指令执行如上述第一方面任一设计中的用于生成转发信息的方法。
第九方面,提供了一种网络设备,包括:处理器;处理器用于与存储器耦合,并读取存储器中的指令之后,根据指令执行如上述第二方面任一设计中的用于生成转发信息的方法。
第十方面,提供了一种计算机存储介质,所述存储介质内存储有计算机程序,所述计算机程序用于执行第一方面任一设计所述的用于生成转发信息的方法。
第十一方面,提供了一种计算机存储介质,所述存储介质内存储有计算机程序,所述计算机程序被用于执行第二方面任一设计所述的用于生成转发信息的方法。
第十二方面,提供了一种包含指令的计算机程序产品,当计算机程序产品在网络设备上运行时,使得网络设备执行第一方面任一设计所述的用于生成转发信息的方法,或者使得网络设备执行第二方面任一设计所述的用于生成转发信息的方法。
第三方面、第六方面、第八方面、第十方面以及第十二方面中任一种设计方式所带来的技术效果可参见第一方面中相应设计方式所带来的技术效果,第三方面、第七方面、第九方面、第十一方面以及第十二方面中任一种设计方式所带来的技术效果可参见第二方面中相应设计方式所带来的技术效果,此处不再赘述。
附图说明
图1为本申请实施例提供的一种用于生成转发信息的***的结构示意图;
图2为本申请实施例提供的一种用于生成转发信息的方法的流程示意图;
图3为本申请实施例提供的一种报文结构的示意图;
图4为本申请实施例提供的一种用于生成转发信息的装置的框图;
图5为本申请实施例提供的另一种用于生成转发信息的装置的框图;
图6为本申请实施例提供的再一种用于生成转发信息的装置的框图;
图7为本申请实施例提供的一种网络设备的结构示意图。
具体实施方式
为使本申请的目的、技术方案和优点更加清楚,下面将结合附图对本申请实施方式作进一步地详细描述。
本申请提供的技术方案可以应用于能够实现报文收发的网络***。作为一种可能的示例,如图1所示,该网络***可以包括:至少一个UPE设备(图1示出了3个)和至少一个NPE设备(图1示出了2个)。该至少一个UPE设备包括UPE设备01至UPE设备03,该至少一个NPE设备包括NPE设备11和NPE设备12,每个UPE设备与NPE设备11和NPE设备12均建立有通信连接,NPE设备11与NPE设备12之间也可以建立有通信连接。UPE设备可以连接有至少一个用户设备(图1示出了12个)。UPE设备01连接有用户设备1(简称Y1)至Y6,UPE设备02连接有Y7至Y9,UPE设备03连接有Y10至Y12。每个用户设备可以作为独立的设备运行,也可以运行在虚拟机上。当用户设备运行在虚拟机上时,该至少一个用户设备可以位于同一个虚拟机上,也可以位于不同的虚拟机上。图1示出的即为存在多个用户设备运行在同一虚拟机上的情形,示例地,UPE设备01连接的Y1至Y3位于同一个虚拟机101上,UPE设备01连接的Y4至Y6位于同一个虚拟机102上,UPE设备02连接的Y7至Y9位于同一个虚拟机103上,UPE设备03连接的Y10至Y12位于同一个虚拟机104上。
UPE设备能够接收其连接的至少一个用户设备生成的请求报文,任一用户设备生成的请求报文中携带有该用户设备的MAC地址。UPE设备可以基于该至少一个用户设备的MAC地址确定相应的MAC路由,并将该MAC路由发送至NPE设备,以使NPE设备对这些MAC路由进行学习。NPE设备能够基于学习到的MAC路由生成转发信息,之后基于该转发信息进行报文的转发。例如,在进行报文传输时,UPE设备可以向NPE设备转发用户设备生成的请求报文。NPE设备获取该请求报文的响应报文,该响应报文中携带有MAC地址。NPE设备可以基于该响应报文中携带的目的MAC地址以及转发信息,将该响应报文发送至目的MAC地址所对应的UPE设备。
但是,由于该网络***中的UPE设备较多,且UPE设备连接的用户设备往往也较多,导致NPE设备需要学习的MAC路由较多,进而导致NPE设备需要查询的转发信息的数量较多,查询效率较低,并且存储压力较大。进一步的,NPE设备所能支持的MAC路由数量有限,当NPE设备需要学习的MAC路由的数量较多时,NPE设备可能会出现无法满足网络实际需求的情况。另外,NPE设备学习到的MAC路由往往需要更新,在NPE设备需要学习的MAC路由的数量较多时,NPE设备更新其学习到的MAC路由的时间较长。
本申请实施例提供了一种用于生成转发信息的方法,该方法可以应用于具有报文收发功能的网络设备,例如,可以应用于图1所示的网络***中的任一UPE设备(例如UPE设备01)和与该任一UPE设备连接的任一NPE设备(例如NPE设备11)。请参考图2,图2为本申请实施例提供的一种用于生成转发信息的方法的流程示意图,以下实施例以该方法应用于第一UPE设备和第一NPE设备为例进行说明,该方法可以包括:
S201、第一UPE设备接收n个报文,其中,所述n个报文包括n个MAC地址,所述n个报文的源MAC地址分别为所述n个MAC地址,n为大于或等于2的整数。
需要说明的是,该n个报文可以是第一UPE设备连续接收到的多个报文,也可以是第一UPE设备连续接收到的多个报文中的部分报文,所述部分报文可以是不连续的,本申请实施例对此不作特别限定。在一个示例中,该n个报文可以是第一UPE设备连接的n个用户设备生成的请求报文,此时该n个MAC地址表示该n个用户设备的MAC地址。该n个报文可以是地址解析协议(Address Resolution Protocol,ARP)报文,也可以是其它类型的报文。
示例地,表1示出了n个MAC地址(表1中以n=5为例)。表1中的MAC地址以16进制表示。需要说明的是,表1中仅示例性的示出了n个MAC地址,并不构成对本申请实施例的唯一限定。
表1
MAC地址编号 MAC地址
1 0000-8a51-2c16桥接域(bridge domain,BD)10000
2 0000-7d11-37d7 BD 10000
3 0000-7c08-0c9b BD 10000
4 0000-7c08-0ca8 BD 10000
5 0000-7c08-0cb6 BD 10000
…… ……
S202、第一UPE设备基于所述n个MAC地址确定n个经转换的MAC地址,其中所述n个MAC地址与所述n个经转换的MAC地址一一对应,所述n个经转换的MAC地址属于第一MAC地址段。
该第一MAC地址段可以用于表示多个MAC地址。属于第一MAC地址段的多个MAC地址具有相同的固定比特位子串,但多个MAC地址的多个可变比特位子串互不相同,其中,固定比特位子串用于标识多个MAC地址对应于第一MAC地址段,多个可变比特位子串用于区分多个MAC地址。
该第一MAC地址段可以属于第一聚合MAC路由。该第一聚合MAC路由为该第一UPE设备发送的路由,包括该第一MAC地址段和该第一UPE设备的IP地址。在EVPN网络中,第一UPE设备的IP地址可以具体为邻居IP(peer IP)地址,该邻居IP地址为第一UPE设备和第一NPE设备之间建立EVPN邻居关系后所使用的IP地址。以下实施例以第一MAC地址段属于第一聚合MAC路由为例进行说明。
在一个示例中,该第一MAC地址段包括聚合MAC地址和掩码。聚合MAC地址用于表示多个MAC地址,与一般的MAC地址位数相同,即48比特位。掩码可以用于指示相应的MAC地址为聚合MAC地址。
可以采用下述方式一表示第一MAC地址段。
该聚合MAC地址包括高比特位子串和低比特位子串。当聚合MAC地址以二进制形式表示时,该高比特位子串包括t(t≥1)个比特位,对应于聚合MAC地址的前t个高比特位,该低比特位子串包括(48-t)个比特位,对应于聚合MAC地址的后(48-t)个低比特位。聚合MAC地址的高比特位子串可以与多个MAC地址的固定比特位子串相同。掩码的长度与聚合MAC地址相同,即48位。掩码用于指示聚合MAC地址的高比特位子串的长度。掩码的前t个高比特位的取值为1,而后(48-t)个低比特位的取值为0。高比特位子串与多个MAC地址的固定比特位子串相同。
也可以采用下述方式二表示第二MAC地址段。
该聚合MAC地址仍包括高比特位子串和低比特位子串。当聚合MAC地址以二进制形式表示时,高比特位子串包括r(r≥1)个比特位,对应于聚合MAC地址的前r个高比特位,低比特位子串包括(48-r)个比特位,对应于聚合MAC地址的后(48-r)个低比特位。聚合MAC地址的低比特位子串可以与多个MAC地址的固定比特位子串相同。掩码的长度与聚合MAC地址相同,即48位。掩码用于指示聚合MAC地址的低比特位子串的长度。掩码的前r个高比特位的取值为0,而后(48-r)个低比特位的取值为1。低比特位子串与多个MAC地址的固定比特位子串相同。
在另一个示例中,该第一MAC地址段包括聚合MAC地址和指示信息。聚合MAC地址用于表示多个MAC地址,与一般的MAC地址位数相同。该指示信息例如可以占据指定的比特位长度,并具有特定的取值,以用于指示相应的MAC地址为聚合MAC地址。可选地,该指示信息例如还可以位于特定的字段,并可以赋值以用于指示聚合MAC地址的有效位数,该有效位数可以用于后续的路由匹配计算。
由第一MAC地址段表示的多个MAC地址可以位于同一个MAC地址池(英文:addressnat)。该MAC地址池中包括可用的p(p≥1)个MAC地址,该p个MAC地址具有相同的固定比特位子串。一个MAC地址池中包括的MAC地址的数量可以是固定值,也可以根据需要设定。一个MAC地址池中包括的MAC地址的数量可以大于或等于第一UPE设备所连接的用户设备的数量。例如,第一UPE设备可以根据第一UPE设备上承载的某个城域的用户设备的数量规划MAC地址池的大小;或者,根据第一UPE设备上承载的开展某类业务的用户设备的数量规划MAC地址池的大小;又或者,根据第一UPE设备上承载的全部用户设备的数量统一规划MAC地址池的大小等,以保证第一MAC地址段能够容纳相应数量的用户设备所对应的MAC地址,从而提高网络设备所规划地址的易用性和合理性,便于第一UPE设备上的MAC地址的管理。
示例地,假设第一UPE设备上支撑的城域A的已有用户设备数量为2000个,考虑未来业务的拓展,规划确定用于该城域A的MAC地址池需要能够容纳4096(即212)个用户设备的MAC地址。以第一MAC地址段采用上述方式一,并且采用二进制形式表示为例,该第一MAC地址段的聚合MAC地址的高比特位子串可以占据整个地址比特位串的高36比特位。4096个MAC地址的固定比特位子串相同,并且也占据整个地址比特位串的高36比特位,且内容与该高比特位子串相同。聚合MAC地址的低比特位子串可以占据整个地址比特位串的低12比特位。该4096个MAC地址的可变比特位子串的长度均为12比特位,但4096个MAC地址中的每一个的可变比特位子串均不相同。
例如,第一MAC地址段在二进制形式下可以表示为:
0000-0000-0000-0000-0000-0000-0000-0000-0000-xxxx-xxxx-xxxx,其中高36位构成的高比特位串的各个位全部为“0”,低12位构成的低比特位串的每一位可以为任意取值。
该第一MAC地址段可以表示对应的MAC地址池中的全部4906个MAC地址。该4096个MAC地址中的每一个MAC地址的固定比特位子串均与第一MAC地址段的高比特位串相同,即4096个MAC地址中的固定比特位子串占据MAC地址的高36位且各个位的取值为0。该4096个MAC地址中的可变比特位子串占据MAC地址的低12位,且每个MAC地址的可变比特位子串均不相同。
例如,对应于第一MAC地址段的MAC地址池中的MAC地址可以表示为:
0000-0000-0000-0000-0000-0000-0000-0000-0000-0000-0000-0001;
0000-0000-0000-0000-0000-0000-0000-0000-0000-0000-0000-0010;
0000-0000-0000-0000-0000-0000-0000-0000-0000-0000-0000-0011;
0000-0000-0000-0000-0000-0000-0000-0000-0000-0000-0000-0100;
0000-0000-0000-0000-0000-0000-0000-0000-0000-0000-0000-0101;
……
为了简明的目的,上述对应于第一MAC地址段的MAC地址池中的MAC地址也可以采用十六进制形式表示,即:
0000-0000-0001;
0000-0000-0002;
0000-0000-0003;
0000-0000-0004;
0000-0000-0005;
……
第一UPE设备可以基于n个MAC地址,在上述第一MAC地址段所表示的多个MAC地址中筛选n个MAC地址作为n个经转换的MAC地址。本申请实施例对第一UPE设备采用何种方式筛选出MAC地址池中与n个MAC地址对应的n个经转换的MAC地址不做特别限定。示例地,第一UPE设备可以在MAC地址池中按序依次确定n个经转换的MAC地址,作为与n个MAC地址对应的n个经转换的MAC地址。或者,第一UPE设备也可以按照随机顺序确定与n个MAC地址对应的n个经转换的MAC地址,只要保证n个MAC地址与n个经转换的MAC地址一一对应即可。
以第一MAC地址段采用上述方式一,并且采用十六进制形式表示为0000-0000-0xxx为例,请参考表2,表2示出了n个MAC地址和n个第一MAC地址段中的MAC地址(也即是n个经转换的MAC地址)的一一对应关系,如表2所示,MAC地址0000-8a51-2c16 BD10000所对应的第一MAC地址段中的MAC地址为0000-0000-0001。
表2
Figure BDA0003810881230000121
S203、第一UPE设备保存所述n个MAC地址与所述n个经转换的MAC地址的对应关系。
第一UPE设备在每确定一个MAC地址与经转换的MAC地址的对应关系后,均可以对该对应关系进行保存,以用于后续报文转发。
S204、第一UPE设备确定第一聚合MAC路由。
该第一聚合MAC路由包括第一MAC地址段。该第一MAC地址段的组成结构可以参考前述S202,在此不做赘述。
可选地,该第一聚合MAC路由还可以包括该第一UPE设备的IP地址,以使得接收该第一聚合MAC路由的网络设备根据第一UPE设备的IP地址,确定向该第一UPE设备转发报文时所使用的端口,从而通过该端口将报文成功发送至该第一UPE设备。在EVPN网络中,该IP地址可以具体为peer IP地址。
S205、第一UPE设备向第一NPE设备发送第一聚合MAC路由。
S206、第一NPE设备生成转发信息,该转发信息包括第一聚合MAC路由中的第一MAC地址段和IP地址。
第一NPE设备在接收到第一UPE设备发送的第一聚合MAC路由后,可以根据该第一聚合MAC路由中的IP地址,查找本地维护的第一路由信息表,确定与第一UPE设备的IP地址对应的端口。该第一路由信息表例如可以是第一NPE设备本地维护和存储的转发信息表(Forwarding Information Base,FIB)。第一NPE设备根据确定的IP地址对应的该端口,生成并存储例如包括第一MAC地址段、该IP地址和该端口的转发信息。所述转发信息存储于第二路由信息表中。所述转发信息可以是MAC路由信息,该第二路由信息表可以是MAC路由表。可选地,该第二路由信息表还可以包括一个或多个基于其他聚合MAC路由生成的一个或多个转发信息,该一个或多个其他聚合MAC路由例如可以是第一UPE设备向第一NPE设备发送的其他聚合MAC路由,也可以是其他UPE设备向第一NPE设备发送的聚合MAC路由等。可选地,该第二路由信息表还可以包括普通的一个或多个MAC路由,该一个或多个MAC路由例如可以是第一NPE设备本地学习到的MAC路由,也可以是其他NPE设备发送的MAC路由,也可以是不具有发送聚合MAC路由功能的其他UPE设备发送的等。
S207、第一UPE设备基于n个报文和n个经转换的MAC地址获得n个更新后的报文,其中n个更新后的报文的源MAC地址分别为n个经转换的MAC地址。
该n个更新前的报文的源MAC地址分别为n个MAC地址,该n个更新后的报文的源MAC地址分别为n个经转换的MAC地址。第一UPE设备可以将n个更新前的报文中的源MAC地址均替换为对应的经转换的MAC地址,以得到n个更新后的报文。
由于该n个报文中的任一报文可能存在多个字段均携带有源MAC地址的情况,因此,第一UPE设备需要将该任一报文中携带的所有源MAC地址均替换为对应的经转换的MAC地址,以保证报文转发的准确性,避免发生报文解析错误、丢包等问题。例如,该任一报文的外层源MAC地址和内层源MAC地址相同,且均为该报文的源MAC地址。第一UPE设备可以分别将外层源MAC地址和内层源MAC地址均替换为与该报文的源MAC地址对应的经转换的MAC地址,以得到更新后的该报文。
示例地,请参考图3,图3为本申请实施例提供的一种报文结构的示意图,所述报文为ARP报文。该报文包括报文头和数据部分。报文头中的以太网源地址字段的内容可以为该ARP报文中的外层源MAC地址,数据部分中的发送端以太网地址字段的内容可以为该ARP报文中的内层源MAC地址。第一UPE设备需要将以太网源地址字段和发送端以太网地址字段的内容均替换为经转换的MAC地址。
如图3所示,该ARP报文的报文头还可以包括以太网目的地址字段(内容为目的MAC地址)和报文类型字段,数据部分还可以包括目的以太网地址字段(内容为目的MAC地址)、硬件类型字段、协议类型字段、硬件地址长度字段、协议地址长度字段、操作(operate,OP)字段、发送端互联网协议(Internet Protocol,IP)地址字段以及目的IP地址字段等。
S208、第一UPE设备向第一NPE设备发送n个更新后的报文。
通过将报文中的源MAC地址替换为对应的经转换的MAC地址,并发送该n个更新后的报文,第一NPE设备能够学习到该n个经转换的MAC地址,以实现基于该n个经转换的MAC地址的报文收发。
S209、第一NPE设备获取n个更新后的报文对应的n个响应报文。
示例地,如果该n个更新后的报文均为请求报文,第一NPE设备可以根据n个更新后的报文中每个报文携带的目的MAC地址,将该报文发送至n个目的MAC地址对应的一个或多个网络设备,以便于该一个或多个网络设备向第一NPE设备反馈n个请求报文对应的n个响应报文。
假设第二报文为该n个响应报文中的任一响应报文,则第二报文的目的MAC地址包括第二经转换的MAC地址,该第二经转换的MAC地址属于n个经转换的MAC地址。
以上示例描述了第一NPE设备获取与更新后的n个请求报文对应的n个响应报文的情形。可以理解地,在另一些情形下,该n个更新后的报文可能不是请求报文,或只有其中的部分报文为请求报文。在该另一些情形下,S209中第一NPE设备并非获取响应报文,而是不定期地获取待转发的报文,该待转发的报文例如可以是需要发往与第一UPE设备连接的任一用户设备的数据报文。该待转发的报文中的目的MAC地址为第一UPE设备中保存的经转换的MAC地址中的一个。
S210、第一NPE设备基于每个响应报文的目的MAC地址和包括第一MAC地址段的转发信息,向第一UPE设备转发所述n个响应报文。
以上述作为响应报文的第二报文为例,第一NPE设备可以基于该第二报文中第二经转换的MAC地址(目的MAC地址)和转发信息,向第一UPE设备转发第二报文。
第一NPE设备可以利用第二经转换的MAC地址查找该第二路由信息表,并基于该第二经转换的MAC地址与该第一MAC地址段的匹配,从该第二路由信息表中命中相应的转发信息,之后再将第二报文发送至该转发信息中对应的端口,以实现第二报文向第一UPE设备的转发。
第一NPE设备可以基于第二报文的第二经转换的MAC地址查询第一NPE设备维护的第二路由信息表,该第二路由信息表包括基于第一聚合MAC路由生成的转发信息。所述查询的方式例如可以是基于精确匹配原则。仍以MAC地址段由聚合MAC地址和掩码构成的方式为例,在此精确匹配原则下,第一NPE设备需将第二经转换的MAC地址与本地维护的MAC地址段的掩码作运算,并且将该MAC地址段的聚合MAC地址也与该掩码作运算,之后将分别与掩码作运算后的第二经转换的MAC地址和聚合MAC地址进行精确匹配,直至命中相应的转发信息。所述查询的方式例如还可以是基于最长匹配原则。所述最长匹配原则指的是将第二经转换的MAC地址与第一NPE设备维护的第二路由信息表中的转发信息进行逐位匹配,直到找到连续匹配的比特位数最长的转发信息。如S202所述,由于第一MAC地址段包括的聚合MAC地址与第二经转换的MAC地址的固定比特位子串是相同的,因此基于最长匹配原则可以确定与第二经转换的MAC地址匹配的第一MAC地址段,从而确定包括该第一MAC地址段的转发信息。需要说明的是,第一NPE设备基于最长匹配原则既可以查找精确匹配的路由,如第一NPE设备维护的本地路由,也可以查找非精确匹配的路由,如第一UPE设备发送的第一聚合MAC路由,从而可以在保持传统机制的基础上实现基于第一聚合MAC路由的报文转发。
需要说明的是,若第一NPE设备在维护的第二路由信息表中未查找到该第二经转换的MAC地址对应的转发信息,则第一NPE设备确定该第二报文为未知单播报文。此时第一NPE设备会对该第二报文进行广播,以将该第二报文发送至第一NPE设备连接的所有UPE设备(或者部分UPE设备),从而保证报文转发的稳定性。
S211、第一UPE设备基于所述n个响应报文得到n个更新后的响应报文。
仍然以上述第二报文为例,第一UPE设备可以基于第二报文和与第二经转换的MAC地址对应的第二MAC地址获得第二更新后的响应报文,其中第二更新后的响应报文的目的MAC地址为第二MAC地址,第二MAC地址属于上述n个MAC地址。
由前述操作可知,第一UPE设备已经保存有n个MAC地址和n个经转换的MAC地址的对应关系。由于该第二MAC地址属于该n个MAC地址,因此,第一UPE设备可以基于保存的n个MAC地址与n个经转换的MAC地址的对应关系,查找第二经转换的MAC地址对应的第二MAC地址,并将第二报文中的第二经转换的MAC地址替换为对应的第二MAC地址,以得到第二更新后的响应报文,从而实现报文向用户设备的正常转发。
需要说明的是,以上基于n个响应报文得到n个经转换的响应报文仅作为一种可能的示例。在实际转发过程中,S211中的第一UPE设备也可以接收其他类型的一个或多个报文,如需转发至用户设备的数据报文,并基于本地保存的n个MAC地址和n个经转换的MAC地址的对应关系,对该一个或多个报文进行更新,以得到相应的更新后的报文。
由于该第二报文可能存在多个字段均携带有第二经转换的MAC地址的情况,因此,第一UPE设备需要将该第二报文所携带的所有第二经转换的MAC地址均替换为对应的第二MAC地址。示例地,请继续参考前述图3,第一UPE设备可以将第二报文中的以太网目的地址字段和目的以太网地址字段的内容均替换为上述第二MAC地址。
S212、第一UPE设备发送该n个更新后的响应报文。
以上述第二报文为例,在基于第二报文得到第二更新后的响应报文后,第一UPE设备可以将该第二更新后的响应报文发送至第二MAC地址对应的用户设备。
若第一UPE设备在保存的n个MAC地址与n个经转换的MAC地址的对应关系中,未查找到第二经转换的MAC地址对应的第二MAC地址,则第一UPE设备确定该第二经转换的报文为未知单播报文。此时第一UPE设备会对该报文进行广播,以将该第二经转换的报文发送至第一UPE设备连接的所有用户设备(或部分用户设备)。
前述实施例中以第一UPE设备确定并保存n个MAC地址与n个经转换的MAC地址的对应关系为例进行说明的。在第一UPE设备保存该n个MAC地址和n个经转换的MAC地址的对应关系之后,第一UPE设备还可以接收用户设备发送的第一报文,该第一报文的第一源MAC地址属于n个报文的n个MAC地址。之后第一UPE设备可以基于第一报文和与第一源MAC地址对应的第一经转换的MAC地址获得第一更新后的报文。该第一更新后的报文的源MAC地址为第一经转换的MAC地址,第一经转换的MAC地址属于n个经转换的MAC地址。第一UPE设备可以向第一NPE设备发送该第一更新后的报文。
在一种可能的情形中,该第一报文可以是用户设备向第一UPE设备发送的请求报文。第一UPE设备已保存有用户设备的MAC地址与经转换的MAC地址之间的对应关系。第一UPE设备在接收到该第一报文后,可以提取第一报文中的第一源MAC地址,再基于S203中保存的n个MAC地址与n个经转换的MAC地址的对应关系,查找第一源MAC地址对应的第一经转换的MAC地址,之后,将该第一报文中的第一源MAC地址替换为第一经转换的MAC地址,以得到第一更新后的报文。该过程可以参考前述描述,在此不做赘述。
可选地,在第一UPE设备向第一NPE设备发送第一更新后的报文之后,第一NPE设备还可以获取该报文的响应报文,之后,第一NPE设备再参考上述S210向第一UPE设备发送该响应报文。第一UPE设备再参考上述S211得到用于向用户设备发送的第一更新后的响应报文,以及参考S212向用户设备发送该第一更新后的响应报文,在此不做赘述。
需要说明的是,前述S201至S212中是以第一MAC地址段属于第一聚合MAC路由为例进行说明的,该第一MAC地址段也可以不属于第一聚合MAC路由,此时,S204和S205可以不执行。S204和S205可以替换为第一UPE设备向第一NPE设备发送第一MAC地址段以及第一UPE设备的IP地址,在S206中,第一NPE设备生成包括第一MAC地址段和第一UPE设备的IP地址的转发信息。可选地,所述第一MAC地址段和第一UPE设备的IP地址也可以分开发送,只要第一NPE设备在分别接收后能够根据某种预设的规则,将第一MAC地址段和第一UPE设备的IP地址进行关联即可。所述预设的规则例如可以是共同标志位等。或者,第一UPE设备的IP地址也可以替代为可用于标识第一UPE设备的其他类型的设备标识。
在本申请实施例中,第一UPE设备中可以包括多个MAC地址段,不同的MAC地址段包括的多个MAC地址有所不同。例如,第一UPE设备可以将申请不同业务类型的用户设备的MAC地址分别划分到不同的MAC地址段,或者再例如,第一UPE设备可以将属于不同居住区域的用户设备的MAC地址划分到不同的MAC地址段,从而方便用户设备的管理和报文的转发。例如,第一UPE设备可以将属于不同地区或者属于不同城市的用户设备的MAC地址划分到不同的MAC地址段。
上述实施例中是以第一MAC地址段为例进行说明的。在其他情形下,第一UPE设备还可以包括除第一MAC地址段之外的其他地址段,比如第二MAC地址段。UPE设备和NPE设备也可以参考上述基于第一MAC地址段生成转发信息的方法,实现基于第二MAC地址段的报文的收发。
示例地,第一UPE设备还可以接收包括有m个MAC地址的m个报文。其中,该m个报文的源MAC地址分别为m个MAC地址,m为大于或等于2的整数。之后,第一UPE设备可以根据该m个MAC地址确定与该m个MAC地址一一对应的m个经转换的MAC地址,其中,该m个经转换的MAC地址属于第二MAC地址段。第一UPE设备在确定m个经转换的MAC地址后,可以保存该m个MAC地址与m个经转换的MAC地址的对应关系,并向第一NPE设备或第二NPE设备发送该第二MAC地址段。
之后第一UPE设备可以基于m个报文和m个经转换的MAC地址获得m个更新后的报文,其中m个更新后的报文的源MAC地址分别为m个经转换的MAC地址。第一UPE设备可以向第一NPE设备或第二NPE设备发送m个更新后的报文。当m个更新后的报文为请求报文时,第一NPE设备或第二NPE设备在接收到该m个更新后的报文后,获取该m个更新后的报文对应的m个响应报文。第一NPE设备或第二NPE设备生成包括第二MAC地址段的转发信息,并基于该包括第二MAC地址段的转发信息向第一UPE设备转发该m个响应报文。第一UPE设备基于接收到的m个响应报文得到m个更新后的响应报文,并向具有该m个更新后的响应报文中携带的m个MAC地址的用户设备发送该m个更新后的响应报文。
该第二MAC地址段可以属于第二聚合MAC路由。该第二聚合MAC路由为该第一UPE设备发送的路由,包括该第二MAC地址段和该第一UPE设备的IP地址。此时,第一UPE设备可以先确定第二聚合MAC路由,之后再向第一NPE设备或第二NPE设备发送第二聚合MAC路由,以向第一NPE设备或第二NPE设备发送第二MAC地址段。该第二聚合MAC路由可以参考前述第一聚合MAC路由,该过程可以参考前述S204和S205,在此不做赘述。
在其他情形下,除第一UPE设备之外的其他UPE设备也可以生成聚合MAC路由,并发送至第一NPE设备、第二NPE设备、或其他任一NPE设备。
前述实施例中,用于配合完成聚合MAC路由收发及转发信息生成的网络设备分别为UPE设备和NPE设备。可以理解地,在其他可能的应用场景中,也可以是其他类型的网络设备用于实现相应的功能。
前述实施例中的第一UPE设备或第一NPE设备可以称为第一网络设备。
当第一UPE设备称为第一网络设备时,第一网络设备可以用于执行上述第一UPE设备执行的操作。并且,此时第一NPE设备可以称为第二网络设备,第二NPE设备可以称为第三网络设备。
当第一NPE设备称为第一网络设备时,第一网络设备可以用于执行上述第一NPE设备执行的操作。并且,此时第一UPE设备可以称为第二网络设备,第二NPE设备可以称为第三网络设备,S209中第一NPE设备获取到的响应报文可以是第四网络设备发送的。
需要说明的是,用户设备的MAC地址是预先配置的,通常各个用户设备的MAC地址之间比较离散,导致无法直接将至少一个用户设备的MAC地址进行聚合得到聚合MAC路由。而本申请实施例中,第一UPE设备可以先确定包括多个经转换的MAC地址的MAC地址池,该多个经转换的MAC地址可以是连续的,并且可以由一条聚合MAC路由表示。通过将多个用户设备发送的报文中的多个MAC地址替换为多个经转换的MAC地址,并发布能够表示该多个经转换的MAC地址的该聚合MAC路由,能够实现对至少一个用户设备的MAC地址的聚合,并实现基于该聚合MAC路由的报文的正常转发。
基于本申请实施例提供的用于生成转发信息的方法,第一UPE设备根据接收的n个报文中携带的n个MAC地址,确定与该n个MAC地址对应的n个经转换的MAC地址,该n个经转换的MAC地址属于第一MAC地址段。第一UPE设备保存该n个MAC地址与n个经转换的MAC地址的一一对应关系,并向第一NPE设备发送第一MAC地址段。所述第一MAC地址段例如可以包括于聚合MAC路由中,从而使得第一NPE设备无需学习与n个MAC地址对应的n个MAC路由,而只需学习一个聚合MAC路由即可。由此,第一NPE设备学习的MAC路由数量明显降低,减轻了第一NPE设备的存储压力,节约了网络资源。
此外,由于聚合路由数量较少,降低了第一NPE设备无法满足MAC路由的数量规格这种情况的发生概率,也降低了第一NPE设备更新其保存的MAC路由的时长。
本申请实施例提供的方法中各操作的先后顺序可以进行适当调整,操作也可以根据情况进行相应增减。任何熟悉本技术领域的技术人员在本申请揭露的技术范围内,容易想到的可变形方式,应涵盖在本申请的保护范围之内。本申请实施例对此不做特别限定。
本申请实施例还提供一种用于生成转发信息网络***,该用于生成转发信息的网络***可以应用以上实施例提供的用于生成转发信息的方法。该用于生成转发信息网络***例如可以是图1所示的网络***。
可选地,该用于生成转发信息的***可以包括第一网络设备和第二网络设备。该第一网络设备例如可以是图2示出的第一UPE设备,该第二网络设备例如可以是图2示出的第一NPE设备。该第一网络设备用于:接收n个报文,其中,n个报文包括n个MAC地址,n个报文的源MAC地址分别为n个MAC地址,n为大于或等于2的整数,基于n个MAC地址确定n个经转换的MAC地址,其中n个MAC地址与n个经转换的MAC地址一一对应,n个经转换的MAC地址属于第一MAC地址段,保存n个MAC地址与n个经转换的MAC地址的对应关系。向第二网络设备发送第一MAC地址段。相应的,该第二网络设备用于:接收第一MAC地址段。生成转发信息,所述转发信息包括第一MAC地址段;基于转发信息转发接收到的报文。该第二网络设备用于:接收所述第一MAC地址段,生成第一转发信息,所述第一转发信息包括第一MAC地址段,基于所述第一转发信息和接收到的第一报文的第一目的MAC地址转发所述第一报文,所述第一目的MAC地址属于所述第一MAC地址段。
所述第一MAC地址段例如可以包括于聚合MAC路由中,通过上述技术方案,在保证用于生成转发信息的***能够正常完成报文转发的基础上,明显降低第二网络设备学习的MAC路由数量,减轻第二网络设备的存储压力,节约了网络资源。
该第一网络设备还可以用于:基于n个报文和n个经转换的MAC地址获得n个更新后的报文,其中n个更新后的报文的源MAC地址分别为n个经转换的MAC地址。发送n个更新后的报文。
所述第一网络设备还可以用于从所述第二网络设备接收所述第一报文,其中,所述第一报文的目的MAC地址包括第一经转换的MAC地址,所述第一经转换的MAC地址属于所述n个经转换的MAC地址。所述第一网络设备基于所述第一报文和与所述第一经转换的MAC地址对应的第一MAC地址获得第一经转换的报文,其中所述第一经转换的报文的目的MAC地址为所述第一MAC地址,所述第一MAC地址属于所述n个MAC地址,发送所述第一经转换的报文。所述第一MAC地址段可以属于第一网络设备向第二网络设备发送的第一聚合MAC路由,所述第一聚合MAC路由还可以包括第一网络设备的IP地址。
所述第一网络设备还可以用于接收第二报文,所述第二报文的第二源MAC地址属于所述n个报文的所述n个MAC地址。所述第一网络设备基于所述第二报文和与所述第二源MAC地址对应的第二经转换的MAC地址获得第二经转换的报文,其中所述第二经转换的报文的源MAC地址为所述第二经转换的MAC地址,所述第二经转换的MAC地址属于所述n个经转换的MAC地址,发送所述第二经转换的报文。
当所述第二报文,例如ARP报文中包括多个源MAC地址时,所述第二报文的第二源MAC地址为外层源MAC地址,所述第二报文还包括内层源MAC地址,所述内层源MAC地址与所述外层源MAC地址相同,所述基于所述第二报文和与所述第二源MAC地址对应的第二经转换的MAC地址获得第二经转换的报文。所述第一网络设备分别将所述外层源MAC地址和所述内层源MAC地址替换为与所述第二源MAC地址对应的第二经转换的MAC地址,以获得第二经转换的报文。
所述第一网络设备还用于接收m个报文,其中,所述m个报文包括m个介质访问控制MAC地址,所述m个报文的源MAC地址分别为所述m个MAC地址,m为大于或等于2的整数。所述第一网络设备基于所述m个MAC地址确定m个经转换的MAC地址,其中所述m个MAC地址与m个经转换的MAC地址一一对应,所述m个经转换的MAC地址属于第二MAC地址段,保存所述m个MAC地址与所述m个经转换的MAC地址的对应关系。所述第一网络设备可以向所述第二网络设备或第三网络设备发送所述第二MAC地址段。
所述第二网络设备或所述第三网络设备可以用于接收所述第二MAC地址段,生成包括所述第二MAC地址段的第二转发信息,基于包括所述第二MAC地址段的第二转发信息转发接收到的第三报文,所述第三报文的目的MAC地址属于所述第二MAC地址段。所述第三网络设备例如可以是图1所示***中的NPE设备。
综上所述,本申请实施例提供的用于生成转发信息的***中,第一网络设备根据接收的n个报文中携带的n个MAC地址,确定与该n个MAC地址对应的n个经转换的MAC地址,该n个经转换的MAC地址属于第一MAC地址段。第一网络设备保存该n个MAC地址与n个经转换的MAC地址的一一对应关系,并向第二网络设备发送第一MAC地址段,所述第一MAC地址段例如可以包括于聚合MAC路由中,从而使得第二网络设备无需学习与n个MAC地址对应的n个MAC路由,而只需学习一个聚合MAC路由即可。由此,第二网络设备学习的MAC路由数量明显降低,减轻了第二网络设备的存储压力,节约了网络资源。
上文中结合图1至图3,详细描述了本申请实施例所提供的用于生成转发信息的方法,下面将结合图4至图6,描述本申请实施例所提供的用于生成转发信息的装置。
本申请实施例提供了一种用于生成转发信息的装置,该用于生成转发信息的装置例如可以是前述图2示出的方法中的第一UPE设备。请参考图4,图4为本申请实施例提供的一种用于生成转发信息的装置的框图,该用于生成转发信息的装置300包括:
第一接收模块301,用于接收n个报文,其中,n个报文包括n个MAC地址,n个报文的源MAC地址分别为n个MAC地址,n为大于或等于2的整数;
第一确定模块302,用于基于n个MAC地址确定n个经转换的MAC地址,其中n个MAC地址与n个经转换的MAC地址一一对应,n个经转换的MAC地址属于第一MAC地址段;
第一保存模块303,用于保存n个MAC地址与n个经转换的MAC地址的对应关系;
第一发送模块304,用于向第一网络设备发送第一MAC地址段。
综上所述,本申请实施例提供的用于生成转发信息的装置中,第一确定模块根据第一接收模块接收的n个报文中携带的n个MAC地址,确定与该n个MAC地址对应的n个经转换的MAC地址,该n个经转换的MAC地址属于第一MAC地址段。第一保存模块保存该n个MAC地址与n个经转换的MAC地址的一一对应关系,第一发送模块向第一网络设备发送第一MAC地址段,所述第一MAC地址段例如可以包括于聚合MAC路由中,从而使得第一网络设备无需学习与n个MAC地址对应的n个MAC路由,而只需学习一个聚合MAC路由即可。由此,第一网络设备学习的MAC路由数量明显降低,减轻了第一网络设备的存储压力,节约了网络资源。
可选地,请参考图5,图5为本申请实施例提供的另一种用于生成转发信息的装置的框图,如图5所示,在图4的基础上,该用于生成转发信息的装置300还包括:
第一获取模块305,用于基于n个报文和n个经转换的MAC地址获得n个更新后的报文,其中n个更新后的报文的源MAC地址分别为n个经转换的MAC地址;
第二发送模块306,用于发送n个更新后的报文。
通过将报文中的源MAC地址替换为对应的经转换的MAC地址,远端网络设备能够学习到经转换的MAC地址,以实现基于经转换的MAC地址的报文收发。
可选地,如图5所示,该用于生成转发信息的装置300还包括:
第二接收模块307,用于接收第一报文,第一报文的第一源MAC地址属于n个报文的n个MAC地址;
相应的,该第一获取模块305,还用于基于第一报文和与第一源MAC地址对应的第一经转换的MAC地址获得第一经转换的报文,其中第一经转换的报文的源MAC地址为第一经转换的MAC地址,第一经转换的MAC地址属于n个经转换的MAC地址;
第三发送模块308,用于发送第一经转换的报文。
在接收到该第一报文后,该用于生成转发信息的装置可以提取第一报文中的第一源MAC地址,再基于已保存的n个MAC地址与n个经转换的MAC地址的对应关系,查找第一源MAC地址对应的第一经转换的MAC地址,之后,将该第一报文中的第一源MAC地址替换为第一经转换的MAC地址,以得到第一经转换的报文,从而实现报文基于经转换的MAC地址的收发。
可选地,第一报文的第一源MAC地址为外层源MAC地址,第一报文还包括内层源MAC地址,内层源MAC地址与外层源MAC地址相同,该第一获取模块305,还用于:
分别将外层源MAC地址和内层源MAC地址替换为与第一源MAC地址对应的第一经转换的MAC地址,以获得第一经转换的报文。
在接收到诸如ARP等类型的报文时,该用于生成转发信息的装置需将报文中的内外层源MAC地址均替换为经转换的MAC地址,以保证报文转发的准确性,避免发生丢包等问题。
可选地,如图5所示,该用于生成转发信息的装置300还包括:
第三接收模块309,用于接收第二报文,其中,第二报文的目的MAC地址包括第二经转换的MAC地址,第二经转换的MAC地址属于n个经转换的MAC地址;
第二获取模块310,用于基于第二报文和与第二经转换的MAC地址对应的第二MAC地址获得第二经转换的报文,其中第二经转换的报文的目的MAC地址为第二MAC地址,第二MAC地址属于n个MAC地址;
第四发送模块311,用于发送第二经转换的报文。
远端网络设备将经转换的MAC地址作为目的MAC地址向用户设备发送报文,具有转发功能的用于生成转发信息的装置在接收到报文时,能够基于本地保存的经转换的MAC地址和原始MAC地址之间的对应关系,将目的MAC地址替换为原始MAC地址,以完成报文向用户设备的转发。
可选地,第一MAC地址段属于所述第一网络设备向所述第二网络设备发送的第一聚合MAC路由,所述第一聚合MAC路由还包括所述第一网络设备的IP地址。所述IP地址可以使得接收所述第一MAC路由的网络设备确定与所述IP地址对应的端口,从而使得网络设备通过所述端口将报文成功发送至该用于生成转发信息的装置300。
可选地,第一MAC地址段中的MAC地址的数量大于或等于第一网络设备连接的用户设备的数量。
该用于生成转发信息的装置根据确定的用户设备的数量生成相应的第一MAC地址段,以保证第一MAC地址段能够容纳相应数量的用户设备所对应的MAC地址,从而提高该用于生成转发信息的装置所规划地址的易用性和合理性。该用户设备的数量例如可以基于业务类型和居住区域等确定。
可选地,如图5所示,该用于生成转发信息的装置300还包括:
第四接收模块312,用于接收m个报文,其中,m个报文包括m个介质访问控制MAC地址,m个报文的源MAC地址分别为m个MAC地址,m为大于或等于2的整数;
第二确定模块313,用于基于m个MAC地址确定m个经转换的MAC地址,其中m个MAC地址与m个经转换的MAC地址一一对应,m个经转换的MAC地址属于第二MAC地址段;
第二保存模块314,用于保存m个MAC地址与m个经转换的MAC地址的对应关系;
第五发送模块315,用于向第一网络设备或第二网络设备发送第二MAC地址段。
该用于生成转发信息的装置中可以包括多个MAC地址段,不同的MAC地址段可以包括不同的多个MAC地址。示例地,第一网络设备可以将申请不同业务类型的用户设备的MAC地址分别划分到不同的MAC地址段,或者再例如,该用于生成转发信息的装置可以将属于不同居住区域的用户设备的MAC地址划分到不同的MAC地址段,从而方便用户设备的管理和报文的转发。
本申请实施例提供了一种用于生成转发信息的装置,该用于生成转发信息的装置例如可以是图2示出的第一NPE设备。请参考图6,图6为本申请实施例提供的一种用于生成转发信息的装置的框图,该用于生成转发信息的装置400包括:
第一接收模块401,用于接收第一网络设备发送的MAC地址段;
生成模块402,用于生成转发信息,转发信息包括MAC地址段;
第二接收模块403,用于接收第二网络设备发送的报文,报文包括目的MAC地址,目的MAC地址属于MAC地址段;
转发模块404,用于基于目的MAC地址和转发信息,向第一网络设备转发接收到的报文。
综上所述,本申请实施例提供的用于生成转发信息的装置中,生成模块生成包括第一接收模块接收到的第一网络设备发送的MAC地址段的转发信息,转发模块基于第二接收模块接收到的报文中的目的MAC地址和生成模块生成的转发信息,向第一网络设备转发接收到的报文,所述MAC地址段例如可以包括于聚合MAC路由中,从而使得用于生成转发信息的装置无需学习与n个MAC地址对应的n个MAC路由,而只需学习一个聚合MAC路由即可。由此,用于生成转发信息的装置学习的MAC路由数量明显降低,减轻了用于生成转发信息的装置的存储压力,节约了网络资源。
可选地,该转发模块404用于基于目的MAC地址和最长匹配原则查询转发信息,并基于转发信息向第一网络设备转发报文,转发信息的MAC地址段与目的MAC地址相匹配。
该用于生成转发信息的装置基于最长匹配原则既可以查找精确匹配的路由,如该用于生成转发信息的装置维护的本地路由,也可以查找非精确匹配的路由,如第一网络设备发送的聚合MAC路由,从而可以在保持传统机制的基础上实现基于聚合MAC路由的报文转发。
可选地,所述转发信息还包括端口,所述端口基于所述第二网络设备的IP地址确定,该转发模块404用于通过所述端口转发所述报文。
本申请实施例提供了一种计算机可读存储介质,该存储介质内存储有计算机程序,该计算机程序用于执行本申请实施例提供的任一用于生成转发信息的方法。
本申请实施例提供了一种包含指令的计算机程序产品,当计算机程序产品在网络设备上运行时,使得网络设备执行本申请实施例任一设计所述的用于生成转发信息的方法。
本申请实施例提供了一种网络设备。该网络设备例如可以是图2示出的第一UPE设备,或者图1示出的其他UPE设备,或者其他任何网络设备,该其他任何网络设备可以用于执行与图2示出的第一UPE设备相同的功能。该网络设备包括:处理器;处理器用于与存储器耦合,并读取存储器中的指令之后,根据指令执行如本申请前述实施例描述的第一UPE设备执行的方法。
本申请实施例还提供了一种网络设备,该网络设备例如可以是图2示出的第一NPE设备,或者图1示出的其他NPE设备,或者其他任何网络设备,该其他任何网络设备可以用于执行与图2示出的第一NPE设备相同的功能。该网络设备包括:处理器;处理器用于与存储器耦合,并读取存储器中的指令之后,根据指令执行如本申请前述实施例描述的第一NPE设备执行的方法。
上述实施例中处理器的个数可以为多个。与处理器耦合的存储器可以独立于处理器之外或独立于网络设备之外,也可以在处理器或网络设备之内。存储器可以是物理上独立的单元,也可以是云服务器上的存储空间或网络硬盘等。可选地,存储器可以为一个或多个。当存储器的个数为多个时,可以位于相同的或不同的位置,并且可以独立或配合使用。示例性地,当存储器位于网络设备内部时,请参考图7,图7为一种可能的网络设备500的结构示意图。该网络设备500包括:处理器502和存储器501,其中,存储器501用于存储程序,处理器502用于调用存储器501中存储的程序,以使得该网络设备执行相应的方法或功能。可选地,如图7所示,该网络设备500还可以包括至少一个通信接口503和至少一个通信总线504。存储器501、处理器502以及通信接口503通过通信总线504通信连接。其中,通信接口503用于在处理器502的控制下与其他装置通信,处理器502可以通过通信总线504调用存储器501中存储的程序。
在上述实施例中,可以全部或部分地通过软件、硬件、固件或者其任意组合来实现。当使用软件实现时,可以全部或部分地以计算机程序产品的形式实现,所述计算机程序产品包括一个或多个计算机指令。在计算机上加载和执行所述计算机程序指令时,全部或部分地产生按照本申请实施例所述的流程或功能。所述计算机可以是通用计算机、计算机网络、或者其他可编程装置。所述计算机指令可以存储在计算机的可读存储介质中,或者从一个计算机可读存储介质向另一个计算机可读存储介质传输,例如,所述计算机指令可以从一个网站站点、计算机、服务器或数据中心通过有线(例如同轴电缆、光纤、数字用户线)或无线(例如红外、无线、微波等)方式向另一个网站站点、计算机、服务器或数据中心传输。所述计算机可读存储介质可以是计算机能够存取的任何可用介质或者包含一个或多个可用介质集成的服务器、数据中心等数据存储装置。所述可用介质可以是磁性介质(例如,软盘、硬盘、磁带)、光介质,或者半导体介质(例如固态硬盘)等。
在本申请中,术语“第一”和“第二”等仅用于描述目的,而不能理解为指示或暗示相对重要性。术语“至少一个”指一个或多个,“多个”指两个或两个以上,除非另有明确的限定。术语“和/或”,仅仅是一种描述关联对象的关联关系,表示可以存在三种关系,例如,A和/或B,可以表示:单独存在A,同时存在A和B,单独存在B这三种情况。另外,本文中字符“/”,一般表示前后关联对象是一种“或”的关系。
需要说明的是,本申请实施例提供的方法实施例和装置实施例等不同类型的实施例均可以相互参考,本申请实施例对此不做限定。本申请实施例提供的方法实施例操作的先后顺序能够进行适当调整,操作也能够根据情况进行相应增减,任何熟悉本技术领域的技术人员在本申请揭露的技术范围内,可轻易想到变化的方法,都应涵盖在本申请的保护范围之内,因此不再赘述。
在本申请提供的相应实施例中,应该理解到,所揭露的***、设备和装置等可以通过其它的构成方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个***,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性或其它的形式。
作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元描述的部件可以是或者也可以不是物理单元,既可以位于一个地方,或者也可以分布到多个网络设备(例如终端设备)上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
以上所述,仅为本申请的具体实施方式,但本申请的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本申请揭露的技术范围内,可轻易想到各种等效的修改或替换,这些修改或替换都应涵盖在本申请的保护范围之内。因此,本申请的保护范围应以权利要求的保护范围为准。

Claims (18)

1.一种用于生成转发信息的方法,其特征在于,所述方法包括:
第一网络设备接收n个报文,其中,所述n个报文包括互不相同的n个介质访问控制MAC地址,所述n个报文的源MAC地址分别为所述n个MAC地址,n为大于或等于2的整数;所述第一网络设备向第二网络设备发送第一聚合MAC路由,所述第一聚合MAC路由包括第一MAC地址段;所述第一聚合MAC路由用于:所述第二网络设备生成第一转发信息,以及所述第二网络设备基于所述第一转发信息向所述第一网络设备转发接收到的报文,其中,所述第一转发信息包括所述第一MAC地址段,基于所述第一转发信息向所述第一网络设备转发的报文包括:属于所述第一MAC地址段的目的MAC地址。
2.根据权利要求1所述的方法,其特征在于,所述方法还包括:
所述第一网络设备基于所述n个MAC地址确定互不相同的n个经转换的MAC地址,其中所述n个MAC地址与n个经转换的MAC地址一一对应,所述n个经转换的MAC地址属于所述第一MAC地址段;
所述第一网络设备保存所述n个MAC地址与所述n个经转换的MAC地址的对应关系。
3.根据权利要求2所述的方法,其特征在于,所述方法还包括:
所述第一网络设备基于所述n个报文和所述n个经转换的MAC地址获得n个更新后的报文,其中所述n个更新后的报文的源MAC地址分别为所述n个经转换的MAC地址;
所述第一网络设备发送所述n个更新后的报文。
4.根据权利要求2或3所述的方法,其特征在于,所述方法还包括:
所述第一网络设备接收第一报文,所述第一报文的第一源MAC地址属于所述n个报文的所述n个MAC地址;
所述第一网络设备基于所述第一报文和与所述第一源MAC地址对应的第一经转换的MAC地址获得第一经转换的报文,其中所述第一经转换的报文的源MAC地址为所述第一经转换的MAC地址,所述第一经转换的MAC地址属于所述n个经转换的MAC地址;
所述第一网络设备发送所述第一经转换的报文。
5.根据权利要求4所述的方法,其特征在于,所述第一报文的第一源MAC地址为外层源MAC地址,所述第一报文还包括内层源MAC地址,所述内层源MAC地址与所述外层源MAC地址相同,所述第一网络设备基于所述第一报文和与所述第一源MAC地址对应的第一经转换的MAC地址获得第一经转换的报文,包括:
所述第一网络设备分别将所述外层源MAC地址和所述内层源MAC地址替换为与所述第一源MAC地址对应的第一经转换的MAC地址,以获得第一经转换的报文。
6.根据权利要求1-5任一项所述的方法,其特征在于,所述方法还包括:
所述第一网络设备接收第二报文,其中,所述第二报文的目的MAC地址包括第二经转换的MAC地址,所述第二经转换的MAC地址属于所述n个经转换的MAC地址;
所述第一网络设备基于所述第二报文和与所述第二经转换的MAC地址对应的第二MAC地址获得第二经转换的报文,其中所述第二经转换的报文的目的MAC地址为所述第二MAC地址,所述第二MAC地址属于所述n个MAC地址;
所述第一网络设备发送所述第二经转换的报文。
7.根据权利要求1-6任一项所述的方法,其特征在于,所述第一聚合MAC路由还包括所述第一网络设备的IP地址。
8.根据权利要求1-7任一项所述的方法,其特征在于,所述第一MAC地址段中的MAC地址的数量大于或等于所述第一网络设备连接的用户设备的数量。
9.根据权利要求1-8任一项所述的方法,其特征在于,所述方法还包括:
所述第一网络设备接收m个报文,其中,所述m个报文包括互不相同的m个介质访问控制MAC地址,所述m个报文的源MAC地址分别为所述m个MAC地址,m为大于或等于2的整数;
所述第一网络设备基于所述m个MAC地址确定互不相同的m个经转换的MAC地址,其中所述m个MAC地址与m个经转换的MAC地址一一对应,所述m个经转换的MAC地址属于第二MAC地址段;
所述第一网络设备保存所述m个MAC地址与所述m个经转换的MAC地址的对应关系;
所述第一网络设备向所述第二网络设备或第三网络设备发送第二聚合MAC路由,所述第二聚合MAC路由包括所述第二MAC地址段;所述第二聚合MAC路由用于:接收到所述第二聚合MAC路由的网络设备生成第二转发信息,以及接收到所述第二聚合MAC路由的网络设备基于所述第二转发信息向所述第一网络设备转发接收到的报文,其中,所述第二转发信息包括所述第二MAC地址段,基于所述第二转发信息向所述第一网络设备转发的报文包括:属于所述第二MAC地址段的目的MAC地址。
10.一种用于生成转发信息的方法,其特征在于,所述方法包括:
第二网络设备接收第一网络设备发送的第一聚合MAC路由,所述第一聚合MAC路由包括第一MAC地址段;
所述第二网络设备生成第一转发信息,所述第一转发信息包括所述第一MAC地址段;
所述第二网络设备接收第三网络设备发送的报文,所述报文包括目的MAC地址;
基于所述目的MAC地址属于所述第一MAC地址段,所述第二网络设备根据所述第一转发信息,向所述第一网络设备转发接收到的所述报文。
11.根据权利要求10所述的方法,其特征在于,所述第一MAC地址段是互不相同的n个经转换的MAC地址所属的MAC地址段,所述n个经转换的MAC地址与互不相同的n个MAC地址一一对应,所述n个MAC地址分别为所述第一网络设备接收到的n个报文的源MAC地址,n为大于或等于2的整数,所述第一网络设备保存了所述n个MAC地址与所述n个经转换的MAC地址的对应关系。
12.根据权利要求10或11所述的方法,其特征在于,所述第二网络设备基于所述第一转发信息,以及所述目的MAC地址属于所述第一MAC地址段,向所述第一网络设备转发接收到的所述报文包括:
所述第二网络设备基于所述目的MAC地址和最长匹配原则查询所述第一转发信息;
所述第二网络设备基于所述第一转发信息向所述第一网络设备转发所述报文;
其中,所述第一转发信息的所述MAC地址段与所述目的MAC地址相匹配。
13.根据权利要求10-12任一项所述的方法,其特征在于,所述第一转发信息还包括端口,所述端口基于所述第一网络设备的IP地址确定,所述第二网络设备基于所述第一转发信息向所述第一网络设备转发所述报文,包括:
所述第二网络设备通过所述端口转发所述报文。
14.一种用于生成转发信息的***,所述***包括第一网络设备和第二网络设备,其特征在于,
所述第一网络设备用于:
接收n个报文,其中,所述n个报文包括互不相同的n个介质访问控制MAC地址,所述n个报文的源MAC地址分别为所述n个MAC地址,n为大于或等于2的整数;
向第二网络设备发送第一聚合MAC路由,所述第一聚合MAC路由包括第一MAC地址段;
所述第二网络设备用于:
接收所述第一聚合MAC路由;
生成第一转发信息,所述第一转发信息包括所述第一MAC地址段;
基于接收到的第二报文的目的MAC地址属于所述第一MAC地址段,根据所述第一转发信息转发所述第二报文。
15.根据权利要求14所述的***,其特征在于,所述第一网络设备还用于:
基于所述n个MAC地址确定互不相同的n个经转换的MAC地址,其中所述n个MAC地址与n个经转换的MAC地址一一对应,所述n个经转换的MAC地址属于所述第一MAC地址段;
保存所述n个MAC地址与所述n个经转换的MAC地址的对应关系。
16.根据权利要求15所述的***,其特征在于,所述第一网络设备还用于:
从所述第二网络设备接收所述第二报文,所述第二报文的所述目的MAC地址包括第二经转换的MAC地址,所述第二经转换的MAC地址属于所述n个经转换的MAC地址;
基于所述第二报文和与所述第二经转换的MAC地址对应的第二MAC地址获得第二经转换的报文,其中所述第二经转换的报文的目的MAC地址为所述第二MAC地址,所述第二MAC地址属于所述n个MAC地址;
发送所述第二经转换的报文。
17.一种网络设备,其特征在于,所述网络设备包括:处理器和存储器,所述存储器中存储有程序,所述处理器用于调用所述存储器中存储的程序,以使得所述网络设备执行如权利要求1至13任一项所述的用于生成转发信息的方法。
18.一种计算机可读存储介质,其特征在于,所述存储介质内存储有计算机程序,所述计算机程序用于执行权利要求1至13任一项所述的用于生成转发信息的方法。
CN202211011830.5A 2019-11-05 2020-01-10 一种用于生成转发信息的方法、装置和*** Pending CN115567441A (zh)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
CN201911071875X 2019-11-05
CN201911071875 2019-11-05
CN202010027651.5A CN112787932B (zh) 2019-11-05 2020-01-10 一种用于生成转发信息的方法、装置和***

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
CN202010027651.5A Division CN112787932B (zh) 2019-11-05 2020-01-10 一种用于生成转发信息的方法、装置和***

Publications (1)

Publication Number Publication Date
CN115567441A true CN115567441A (zh) 2023-01-03

Family

ID=75749976

Family Applications (2)

Application Number Title Priority Date Filing Date
CN202211011830.5A Pending CN115567441A (zh) 2019-11-05 2020-01-10 一种用于生成转发信息的方法、装置和***
CN202010027651.5A Active CN112787932B (zh) 2019-11-05 2020-01-10 一种用于生成转发信息的方法、装置和***

Family Applications After (1)

Application Number Title Priority Date Filing Date
CN202010027651.5A Active CN112787932B (zh) 2019-11-05 2020-01-10 一种用于生成转发信息的方法、装置和***

Country Status (6)

Country Link
US (1) US20220263794A1 (zh)
EP (1) EP4044532A4 (zh)
JP (1) JP2022554380A (zh)
CN (2) CN115567441A (zh)
BR (1) BR112022008591A2 (zh)
WO (1) WO2021088357A1 (zh)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113726658B (zh) * 2021-08-09 2022-10-18 中国联合网络通信集团有限公司 一种路由转发方法及装置

Family Cites Families (20)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6928478B1 (en) * 2001-06-25 2005-08-09 Network Appliance, Inc. Method and apparatus for implementing a MAC address pool for assignment to a virtual interface aggregate
CN100450080C (zh) * 2005-05-17 2009-01-07 华为技术有限公司 收敛二层mac地址的方法及设备
US20070201490A1 (en) * 2005-07-13 2007-08-30 Mahamuni Atul B System and method for implementing ethernet MAC address translation
CN101102264B (zh) * 2006-07-04 2011-07-20 华为技术有限公司 一种以太网转发数据的方法和一种以太网***
US8077720B2 (en) * 2007-02-27 2011-12-13 Alcatel-Lucent Usa Inc. Methods and devices for generating and forwarding translated MAC addresses
US8259726B2 (en) * 2009-05-28 2012-09-04 Force10 Networks, Inc. Method and apparatus for forwarding table reduction
CN102404193B (zh) * 2010-09-17 2014-08-13 华为技术有限公司 生成转发表项、报文转发、地址获取的方法及边缘设备
US8953590B1 (en) * 2011-03-23 2015-02-10 Juniper Networks, Inc. Layer two virtual private network having control plane address learning supporting multi-homed customer networks
US8787149B1 (en) * 2012-02-01 2014-07-22 Juniper Networks, Inc. MAC address synchronization for multi-homing with multichassis link aggregation
CN103795631B (zh) * 2012-10-30 2017-03-15 杭州华三通信技术有限公司 部署了以太网虚拟连接的网络中的流量转发方法及设备
US9331958B2 (en) * 2012-12-31 2016-05-03 Advanced Micro Devices, Inc. Distributed packet switching in a source routed cluster server
CN103944826B (zh) * 2013-01-22 2017-03-15 杭州华三通信技术有限公司 Spbm网络中的表项聚合方法及设备
CN108063716B (zh) * 2013-05-24 2021-08-31 华为技术有限公司 用于以太虚拟专用网的方法和设备
CN105282032A (zh) * 2014-07-25 2016-01-27 中兴通讯股份有限公司 报文转发处理方法、装置及宽带接入设备
US10187218B2 (en) * 2015-09-15 2019-01-22 Google Llc Systems and methods for processing packets in a computer network
WO2017118880A1 (en) * 2016-01-08 2017-07-13 Telefonaktiebolaget Lm Ericsson (Publ) Faster convergence on primary provider edge (pe) failure in a single-active redundancy topology
US10033636B1 (en) * 2016-04-14 2018-07-24 Cisco Technology, Inc. Ethernet segment aware MAC address learning
CN108075956B (zh) * 2016-11-16 2020-05-22 新华三技术有限公司 一种数据处理方法和装置
US11522828B2 (en) * 2017-07-31 2022-12-06 Cisco Technology, Inc. Virtualized network functions through address space aggregation
CN108809767B (zh) * 2018-06-28 2020-09-15 新华三技术有限公司 Mac地址处理方法、设备和级联组网***

Also Published As

Publication number Publication date
EP4044532A4 (en) 2022-12-14
JP2022554380A (ja) 2022-12-28
WO2021088357A1 (zh) 2021-05-14
BR112022008591A2 (pt) 2022-08-09
CN112787932A (zh) 2021-05-11
CN112787932B (zh) 2022-09-02
EP4044532A1 (en) 2022-08-17
US20220263794A1 (en) 2022-08-18

Similar Documents

Publication Publication Date Title
US7526569B2 (en) Router and address identification information management server
US10616175B2 (en) Forwarding information to forward data to proxy devices
KR20160099473A (ko) 모듈식 포워딩 테이블 확장성을 위한 기술
HU218402B (hu) Eljárás és berendezés több hozzáférési ponttal rendelkező forrás átirányító kommunikációs hálózatban mobil egységekkel folytatott vezeték nélküli kommunikációra
JP6195014B2 (ja) 通信システム、通信方法、中継装置、および、通信プログラム
CN110012118B (zh) 一种提供网络地址转换nat服务的方法及控制器
US20230208760A1 (en) Entry generation method, packet sending method, device, and system
CN107547346B (zh) 一种报文传输方法和装置
CN112866119B (zh) 虚拟可扩展局域网通信方法、装置、电子设备及存储介质
CN111654443B (zh) 一种云环境下虚机IPv6地址直接访问公网的方法
CN103634214A (zh) 一种路由信息生成方法及装置
US10536368B2 (en) Network-aware routing in information centric networking
WO2021052381A1 (zh) 报文的发送方法和装置
CN112787932B (zh) 一种用于生成转发信息的方法、装置和***
US20230344751A1 (en) Route Processing Method, Related Apparatus, and Network System
CN108768845B (zh) 一种多归属主机路由同步方法及装置
CN105100300B (zh) 网络地址转换nat的方法及装置
CN113395206B (zh) 路由确定方法、装置和网络设备
CN109088767B (zh) 路由更新方法及装置
CN114513485A (zh) 获取映射规则的方法、装置、设备、***及可读存储介质
US11902158B2 (en) System and method for forwarding packets in a hierarchical network architecture using variable length addresses
CN114301913A (zh) 一种请求处理方法及***
CN114079646A (zh) 传输报文、配置映射表的方法和装置
KR20050063207A (ko) 가상 사설 랜 서비스 제공 방법

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination