CN108881071B - 以太网内容中心网络混合下数据包传输方法装置存储介质 - Google Patents
以太网内容中心网络混合下数据包传输方法装置存储介质 Download PDFInfo
- Publication number
- CN108881071B CN108881071B CN201710363159.3A CN201710363159A CN108881071B CN 108881071 B CN108881071 B CN 108881071B CN 201710363159 A CN201710363159 A CN 201710363159A CN 108881071 B CN108881071 B CN 108881071B
- Authority
- CN
- China
- Prior art keywords
- content
- request packet
- dual
- mac address
- network request
- 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.)
- Active
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L49/00—Packet switching elements
- H04L49/60—Software-defined switches
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L49/00—Packet switching elements
- H04L49/35—Switches specially adapted for specific applications
- H04L49/351—Switches specially adapted for specific applications for local area network [LAN], e.g. Ethernet switches
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L45/00—Routing or path finding of packets in data switching networks
- H04L45/302—Route determination based on requested QoS
- H04L45/306—Route determination based on the nature of the carried application
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L49/00—Packet switching elements
- H04L49/25—Routing or path finding in a switch fabric
- H04L49/252—Store and forward routing
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L49/00—Packet switching elements
- H04L49/30—Peripheral units, e.g. input or output ports
- H04L49/3009—Header conversion, routing tables or routing tags
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L49/00—Packet switching elements
- H04L49/60—Software-defined switches
- H04L49/602—Multilayer or multiprotocol switching, e.g. IP switching
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L45/00—Routing or path finding of packets in data switching networks
- H04L45/48—Routing tree calculation
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L45/00—Routing or path finding of packets in data switching networks
- H04L45/58—Association of routers
- H04L45/583—Stackable routers
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本申请实施例涉及通信技术领域,尤其涉及一种以太网和内容中心网络混合部署下的数据包传输方法相关装置及存储介质,用于在以太网和内容中心网络混合部署下实现数据包的传输。本申请实施例中,双栈交换机接收到的第一内容中心网络请求包中包括源MAC地址域和目的MAC地址域,因此可以使在以太网中的以太网交换机根据第一内容中心网络请求包中的源MAC地址域和目的MAC地址域对第一内容中心网络请求包进行处理,从而实现了在以太网中部署内容中心网络的目的。
Description
技术领域
本申请实施例涉及通信领域,尤其涉及一种以太网和内容中心网络混合部署下的数据包传输方法相关装置及存储介质。
背景技术
在互联网发展过程中,内容本身越来越成为用户需求的中心,因此针对内容为中心的内容中心网络研究应用而生。内容中心网络是以内容为中心的网络,比较常见的是命名数据网络(Named data Networking,NDN)。NDN是近十几年来根据Internet应用发展的特点提出来的一种新型的网络互联结构。
NDN网络中的节点可缓存转发过的数据内容,当其它节点需要请求相同的数据内容时,NDN网络中的节点可以以请求的数据内容的内容名字为索引,找到相应的数据内容,并向发送请求的一端返回所找到的数据内容。可见,NDN网络中以内容为中心的处理方案提高了响应时间,缓解了网络带宽压力。
另一方面,与协议和层次都更复杂的广域网相比,以太网的规模有限且结构扁平,用其直接承载新型的NDN框架可以避免很多额外协作,部署门槛较低。另外,以太网在互联网中十分普及。从长远看,随着越来越多的以太网实现对NDN的支持,NDN的部署会逐步从网络边缘向中心蔓延,为其大规模应用奠定基础。同时,考虑到网络协议(InternetProtocol,IP)协议早已渗透到当今互联网中的各个部分,可以预期,基于IP的应用和流量在未来仍将会长期存在。综上,目前亟需一种方案用于实现在以太网中部署NDN网络。
发明内容
本申请实施例提供一种以太网和内容中心网络混合部署下的数据包传输方法相关装置及存储介质,用于在以太网和内容中心网络混合部署下实现数据包的传输。
第一方面,本申请实施例提供一种以太网和内容中心网络混合部署下的数据包传输方法,该方法中双栈交换机接收请求包,若确定请求包满足预设条件,且确定第一内容中心网络请求包中不包括N-STP链路指示信息,则双栈交换机向至少一个第一邻双栈交换机发送第二内容中心网络请求包。其中,预设条件包括请求包为第一内容中心网络请求包,第一内容中心网络请求包中包括源媒体访问控制MAC地址域和目的MAC地址域;N-STP链路指示信息用于指示传输过第一内容中心网络请求包的所有传输链路中的至少一个传输链路为N-STP链路;双栈交换机若第一邻双栈交换机与双栈交换机之间的链路为N-STP链路;第二内容中心网络请求包是向第一内容中心网络请求包中添加N-STP链路指示信息后得到的。
具体来说,本申请实施例中若确定请求包满足预设条件,且确定第一内容中心网络请求包中不包括N-STP链路指示信息时,可以通过N-STP链路发送也可以通过STP链路发送,若通过N-STP链路发送时,则在第一内容中心网络请求包添加N-STP链路指示信息,将添加N-STP链路指示信息后的第一内容中心网络请求包称为第二内容中心网络请求包,将第二内容中心网络请求包发送给N-STP链路上的双栈交换机。
本申请实施例中若确定请求包满足预设条件,且确定第一内容中心网络请求包中不包括N-STP链路指示信息时,双栈交换机可以根据具体的网络环境,或者一些预设的规则,以及该双栈交换机中的邻交换机中的具体请求来确定是通过N-STP链路还是通过STP链路进行发送,比如预设的规则是该双栈交换机可以向能发送的所有链路进行发送,且该双栈交换机的邻交换机中包括N-STP链路上的邻双栈交换机,也包括STP链路上的邻交换机,此时双栈交换机可以同时既向N-STP链路上的邻双栈交换机发送,也向STP链路上的邻交换机发送,在该过程中,若双栈交换机向N-STP链路上的邻双栈交换机发送,则需要在第一内容中心网络请求包中增加N-STP链路指示信息,本申请实施例中将添加了N-STP链路指示信息的第一内容中心网络请求包称为第二内容中心网络请求包,并将第二内容中心网络请求包发送给N-STP链路上的邻双栈交换机。若向STP链路上的邻交换机,则不再添加N-STP链路指示信息,向STP链路上的邻交换机发送不包括N-STP链路指示信息的第一内容中心网络请求包。
可选地,双栈交换机向至少一个第一邻双栈交换机发送第二内容中心网络请求包,包括:双栈交换机将第二内容中心网络请求包中的源MAC地址域赋值为双栈交换机的MAC地址;双栈交换机向至少一个第一邻双栈交换机发送赋值MAC地址的第二内容中心网络请求包。
本申请实施例中,由于双栈交换机接收到的第一内容中心网络请求包中包括源MAC地址域和目的MAC地址域,因此可以使在以太网中的以太网交换机根据第一内容中心网络请求包中的源MAC地址域和目的MAC地址域对第一内容中心网络请求包进行处理,从而实现了在以太网中部署内容中心网络的目的。
另一种可选地实施方式中,双栈交换机若确定第一内容中心网络请求包满足预设条件,且第一内容中心网络请求包中不包括N-STP链路指示信息之后,还包括:双栈交换机向生成树协议STP链路中包括的邻交换机发送第一内容中心网络请求包。可见,本申请实施例中不仅能够使用以太网中的STP链路,也可以用部署了内容中心网络的以太网中的N-STP链路,增加了可用链路的数量,提高了网络传输性能。
进一步,可选地,双栈交换机向STP链路中包括的邻交换机发送第一内容中心网络请求包,包括:双栈交换机将第一内容中心网络请求包中的源MAC地址域赋值为双栈交换机的MAC地址;双栈交换机向STP链路中包括的邻交换机发送赋值MAC地址的第一内容中心网络请求包。本申请实施例中,由于双栈交换机接收到的内容中心网络请求包中包括源MAC地址域和目的MAC地址域,因此可以使在以太网中的以太网交换机根据内容中心网络请求包中的源MAC地址域和目的MAC地址域对内容中心网络请求包进行处理,从而实现了在以太网中部署内容中心网络的目的。
可选地,双栈交换机若确定请求包满足预设条件之后,还包括:若第一内容中心网络请求包中包括N-STP链路指示信息;则:双栈交换机向至少一个第一邻双栈交换机和/或至少一个第二邻双栈交换机发送第一内容中心网络请求包;其中,第二邻双栈交换机与双栈交换机之间的链路为STP链路。可选地,双栈交换机可以向所有邻双栈交换机洪泛或广播该第一内容中心网络请求包,或者双栈交换机可以向所有邻双栈交换机中的一个或多个转发该第一内容中心网络请求包。也就是说,如果内容中心网络请求包中包括N-STP链路指示信息,则后续仅仅在双栈交换机上传输该内容中心网络请求包。
可选地,双栈交换机向至少一个第一邻双栈交换机和/或至少一个第二邻双栈交换机发送第一内容中心网络请求包,包括:双栈交换机将第一内容中心网络请求包中的源MAC地址域赋值为双栈交换机的MAC地址;双栈交换机向至少一个第一邻双栈交换机和/或至少一个第二邻双栈交换机发送赋值MAC地址的第一内容中心网络请求包。且由于双栈交换机有去重机制,且也添加有源MAC地址域,因此可避免在N-STP链路上传输过的第一内容中心网络请求包的传输错误。
可选地,预设条件还包括:双栈交换机在内容存储器CS中未查询到第一内容中心网络请求包的内容名字关联的内容中心网络内容包内容;其中,CS中存储有内容名字与内容中心网络内容包内容的关联关系;其中,一个内容名字对应的内容中心网络请求包用于获取该内容名字关联的内容中心网络内容包内容。也就是说,本申请实施例中,双栈交换机可以将接收到的内容中心网络内容包中的内容中心网络内容包内容进行缓存。
进一步,可选地,双栈交换机接收第一内容中心网络请求包之后,还包括:双栈交换机若在CS中查询到第一内容中心网络请求包的内容名字关联的内容中心网络内容包内容,则:双栈交换机将内容中心网络内容包内容封装为第一内容中心网络内容包的数据域,并将第一内容中心网络内容包的目标MAC地址域赋值为第一内容中心网络请求包的源MAC;将第一内容中心网络内容包中的源MAC地址域赋值为双栈交换机的MAC地址;双栈交换机发送赋值MAC地址后的第一内容中心网络内容包。如此,若有其它第一内容中心网络请求包需要请求该内容中心网络内容包内容,则可直接从该双栈交换机中获取,从而节省了时延。
可选地,预设条件还包括:双栈交换机在兴趣请求表PIT中未查询到第一内容中心网络请求包的内容名字关联的:端口号和MAC地址;其中,PIT中存储有内容名字、接收该内容名字对应的内容中心网络请求包的端口号、接收到的该内容名字对应的内容中心网络请求包中的源MAC地址三者之间的关联关系。如此,可以通过PIT表格记录下接收到的内容中心网络请求包的源MAC地址和接收端口,从而可将该内容中心网络请求包对应的内容中心网络内容包通过该接收端口返回至源MAC地址指示的终端设备,实现了内容中心网络内容包的传输链路与该内容中心网络内容包对应的内容中心网络请求包的传输链路相同的目的,即从一条传输链路上传输了内容中心网络请求包,则还从该条传输链路上返回该内容中心网络请求包对应的内容中心网络内容包。
可选地,预设条件还包括:双栈交换机在转发信息库FIB中未查询到第一内容中心网络请求包的内容名字关联的:端口号和MAC地址;其中,FIB中存储有内容名字、发送该内容名字对应的内容中心网络请求包的端口号、发送该内容名字对应的内容中心网络请求包的下一跳MAC地址三者之间的关联关系;或者,FIB中存储有内容名字、接收该内容名字对应的内容中心网络内容包的端口号、接收到的该接收该内容名字对应的内容中心网络内容包中的源MAC地址三者之间的关联关系。可选地,FIB表格中端口号和MAC地址的关联关系可以预先设置,也可以在后续传输过程中自学习。比如当接收到一个内容中心网络内容包时,将该内容中心网络内容包的内容名字、接收该内容名字的内容中心网络内容包的端口号和接收该内容名字对应的内容中心网络内容包中的源MAC地址录入FIB中。
可选地,双栈交换机接收第一内容中心网络请求包之后,还包括:若双栈交换机在FIB中查询到第一内容中心网络请求包的内容名字关联的:端口号和MAC地址,则:双栈交换机将第一内容中心网络请求包中的目标MAC地址域赋值为在FIB中查询到的第一内容中心网络请求包的内容名字对应的MAC地址;将第一内容中心网络请求包中的源MAC地址域赋值为双栈交换机的MAC地址;双栈交换机发送赋值MAC地址后的第一内容中心网络请求包。通过查询FIB可以确定出内容名字对应的第一内容中心网络请求包应该发送到哪里,提高了数据传输速率。
可选地,预设条件还包括:在接收到第一内容中心网络请求包之前未收到请求包标识与第一内容中心网络请求包的请求包标识相同的内容中心网络请求包;其中,一个内容中心网络请求包对应一个请求包标识。如此,可以实现对请求包的去重处理,从而实现了在N-STP链路下避免环路的产生以及信息的冗余。
另一种可选地实施方案中,方法还包括:双栈交换机接收第二内容中心网络内容包;其中,第二内容中心网络内容包中包括源MAC地址域和目的MAC地址域;双栈交换机若在兴趣请求表PIT中查询出第二内容中心网络内容包的内容名字关联的N个端口号和N个MAC地址,其中,N个端口号N个MAC地址一一对应;N为大于等于1的整数,则:针对N个端口号中的每个端口号,双栈交换机对第二内容中心网络内容包中的目标MAC地址域赋值为该端口号关联的MAC地址,对源MAC地址域赋值为双栈交换机的MAC地址,将赋值MAC地址后的第二内容中心网络内容包从该端口发送出去;其中,第二内容中心网络内容包的内容名字与第二内容中心网络内容包对应的第一内容中心网络请求包的内容名字相同;PIT中存储有内容名字、接收该内容名字对应的内容中心网络请求包的端口号、接收到的该内容名字对应的内容中心网络请求包中的源MAC地址三者之间的关联关系。如此,双栈交换机可以将接收到的内容中心网络内容包中的内容中心网络内容包内容进行缓存,若后续有其它内容中心网络请求包需要请求该内容中心网络内容包内容,则可直接从该双栈交换机中获取,从而节省了时延。
可选地,双栈交换机接收第二内容中心网络内容包之后,还包括:双栈交换机若在转发信息库FIB中未查询到第二内容中心网络内容包的内容名字关联的:端口号和MAC地址,则:双栈交换机将第二内容中心网络内容包的内容名字、接收第二内容中心网络内容包的的端口号、接收第二内容中心网络内容包的端口号的MAC地址三者之间的关联关系存入FIB中;其中,FIB中存储有内容名字、发送该内容名字对应的内容中心网络请求包的端口号、发送该内容名字对应的内容中心网络请求包的下一跳MAC地址三者之间的关联关系;或者,FIB中存储有内容名字、接收该内容名字对应的内容中心网络内容包的端口号、接收到的该接收该内容名字对应的内容中心网络内容包中的源MAC地址三者之间的关联关系。如此,可将该内容中心网络请求包对应的内容中心网络内容包通过该接收端口返回至源MAC地址指示的终端设备,实现了内容中心网络内容包的传输链路与该内容中心网络内容包对应的内容中心网络请求包的传输链路相同的目的。
第二方面,本申请实施例提供一种以太网和内容中心网络混合部署中的双栈交换机,以太网和内容中心网络混合部署中的双栈交换机包括存储器、收发器和处理器,其中:存储器用于存储指令;处理器用于根据执行存储器存储的指令,并控制收发器进行信号接收和信号发送,当处理器执行存储器存储的指令时,以太网和内容中心网络混合部署中的双栈交换机用于执行上述第一方面或第一方面中任一种方法。
第三方面,本申请实施例提供一种以太网和内容中心网络混合部署中的双栈交换机,用于实现上述第一方面或第一方面中的任意一种方法,包括相应的功能模块,分别用于实现以上方法中的步骤。
第四方面,本申请实施例提供一种计算机存储介质,计算机存储介质中存储有指令,当其在计算机上运行时,使得计算机执行第一方面或第一方面的任意可能的实现方式中的方法。
第五方面,本申请实施例提供一种包含指令的计算机程序产品,当其在计算机上运行时,使得计算机执行第一方面或第一方面的任意可能的实现方式中的方法。
本申请实施例中,由于双栈交换机接收到的第一内容中心网络请求包中包括源MAC地址域和目的MAC地址域,因此可以使在以太网中的以太网交换机根据第一内容中心网络请求包中的源MAC地址域和目的MAC地址域对第一内容中心网络请求包进行处理,从而实现了在以太网中部署内容中心网络的目的。进一步,由于若第一内容中心网络请求包中不包括N-STP链路指示信息,N-STP链路指示信息用于指示传输过第一内容中心网络请求包的所有传输链路中的至少一个传输链路为N-STP链路;则:双栈交换机向第一内容中心网络请求包中添加N-STP链路指示信息,本申请实施例中将添加N-STP链路指示信息的第一内容中心网络请求包称为第二内容中心网络请求包,双栈交换机向至少一个第一邻双栈交换机发送第二内容中心网络请求包;其中,第一邻双栈交换机与双栈交换机之间的链路为N-STP链路。可见,本申请实施例中不仅能够使用以太网中的STP链路,也可以用部署了内容中心网络的以太网中的N-STP链路,增加了可用链路的数量,提高了网络传输性能。
附图说明
图1为本申请实施例适用的一种***架构示意图;
图1a为本申请实施例提供的一种可能的以太网数据帧的结构示意图;
图1b为本申请实施例提供的另一种可能的以太网数据帧的结构示意图;
图1c为本申请实施例提供的另一种可能的以太网数据帧的结构示意图;
图1d为本申请实施例提供的另一种可能的以太网数据帧的结构示意图;
图1e为本申请实施例提供的一种可能的内容中心网络请求包的结构示意图;
图1f为本申请实施例提供的另一种可能的内容中心网络内容包的结构示意图;
图2为本申请实施例提供的一种以太网和内容中心网络混合部署下的数据包传输方法的流程示意图;
图2a为本申请实施例提供的一种双栈交换机处理数据的流程示意图;
图2b为本申请实施例提供的一种可能的CS的表格示意图;
图2c为本申请实施例提供的一种可能的PIT的表格示意图;
图2d为本申请实施例提供的一种可能的FIB的表格示意图;
图2e为本申请实施例中还提供一种以太网和内容中心网络混合部署下的数据包传输方法的流程示意图;
图2f为本申请实施例中提供的一种以太网和内容中心网络混合部署下的数据包传输方法的流程示意图;
图2g为本申请实施例中提供的一种以太网和内容中心网络混合部署下的数据包传输方法的流程示意图;
图3为本申请实施例中提供的一种以太网和内容中心网络混合部署中的双栈交换机的结构示意图;
图4为本申请实施例中提供的一种以太网和内容中心网络混合部署中的双栈交换机的结构示意图。
具体实施方式
本申请实施例中术语“和/或”,仅仅是一种描述关联对象的关联关系,表示可以存在三种关系,例如,A和/或B,可以表示:单独存在A,同时存在A和B,单独存在B这三种情况。另外,本文中字符“/”,一般表示前后关联对象是一种“或”的关系。
图1示例性示出了本申请实施例适用的一种***架构示意图,如图1所示,本申请实施例适用的***架构为在以太网中部署内容中心网络的***结构,该***中可包括至少一个终端设备,比如图1中的终端设备101和终端设备102,还包括至少一个服务器,比如图1中的服务器103,各个终端设备和服务器之间通过至少一个交换机连接。
本申请实施例中终端设备,指向用户提供语音和/或数据连通性的设备(device),包括无线终端设备或有线终端设备。无线终端设备可以是具有无线连接功能的手持式设备、或连接到无线调制解调器的其他处理设备,经无线接入网与一个或多个核心网进行通信的移动终端设备。例如,无线终端设备可以是移动电话(或称为“蜂窝”电话)和具有移动终端设备的计算机。又如,无线终端设备也可以是便携式、袖珍式、手持式、计算机内置的或者车载的移动装置。再如,无线终端设备可以为移动站(mobile station)、接入点(accesspoint)、或用户设备(user equipment,简称UE)的一部分。本申请实施例中的服务器为可向终端设备提供所请求的内容的设备。
如图1所示,本申请实施例中交换机分为两种类型,包括双栈交换机和以太网交换机。双栈交换机英文可称为Dual-Stack switch,如图1所示的双栈交换机111、双栈交换机112和双栈交换机113,以太网交换机如图1所示的以太网交换机121、以太网交换机122和以太网交换机123。本申请实施例中的双栈交换机一方面可以基于以太网数据帧的源MAC地址域和/或目的MAC地址域的MAC地址实现对以太网数据帧的传输;另一方面,也可以基于内容中心网络中的数据包的内容名字对内容中心网络中的数据包进行传输。本申请实施例中的以太网交换机基于接收到的数据中的源MAC地址域和/或目的MAC地址域的MAC地址进行数据的传输,具体来说,以太网交换机既能处理以太网的数据包,也能处理内容中心网络中的数据包。也就是说,本申请实施例中的双栈交换机根据以太网数据包中的源MAC地址域和/或目的MAC地址域的MAC地址实现对以太网数据帧的传输,以太网交换机根据内容中心网络请求包和内容中心网络内容包中的源MAC地址域和/或目的MAC地址域的MAC地址实现对内容中心网络请求包和内容中心网络内容包的传输。
本申请实施例中的链路分为生成树协议(Spanning-Tree Protocol,STP)链路和非生成树协议(Non-Spanning-Tree Protocol,N-STP)链路,如图1所示,粗线表示STP链路,细线表示N-STP链路。在以太网中,可以根据STP把网络拓扑抽象为一颗最小生成树,STP链路是预设的。STP可应用于在网络中建立树形拓扑,消除网络中的环路,并且可以通过一定的方法实现路径冗余。比如从终端设备101开始依次经过双栈交换机111、以太网交换机121、以太网交换机122、双栈交换机113和以太网交换机123的链路均为STP链路。双栈交换机111、双栈交换机112和双栈交换机113之间的链路为N-STP链路。在STP链路中可包括以太网交换机也可包括双栈交换机,在N-STP链路中可包括以太网交换机也可包括双栈交换机。
本申请实施例中存在两种类型的数据帧,在以太网中传输的基于IP协议的以太网数据帧,以及以内容为中心的内容中心网络请求包和内容中心网络内容包。本申请实施例中内容中心网络请求包用于请求获取内容,内容中心网络内容包用于传输内容中心网络请求包所请求的内容,内容中心网络请求包要请求的内容的内容名字和该内容中心网络请求包对应的内容中心网络内容包中所包括的内容的内容名字是相同的。本申请实施例中的内容中心网络是指以内容为中心的网络,比如可包括NDN网络。
本申请实施例中内容中心网络请求包和内容中心网络内容包外部均进行以太网封装,封装了目的媒体访问控制(Medium Access Control,MAC)域和源MAC域。可选地,还可在内容为中心的内容中心网络请求包和内容中心网络内容包外部封装类型指示信息,以便交换机仅解析类型指示信息即可确定接收到是否为内容中心网络请求包或内容中心网络内容包。
图1a至图1d示例性示出了本申请实施例中几种可能的以太网数据帧的结构示意图,图1e示例性示出了本申请实施例中一种可能的内容中心网络请求包的结构示意图,图1f示例性示出了本申请实施例中一种可能的内容中心网络内容包的结构示意图。
如图1a至图1d所示,以太网数据帧中包括目的MAC域、源MAC域、类型指示信息以及数据域。可选地,以太网数据帧中的类型指示信息可以指示处该以太网数据帧是何种类型,比如,如图1b所示,类型指示信息为0x0800则表示该以太网数据帧为承载网络协议(Internet Protocol,IP)的以太网数据帧;如图1c所示,类型指示信息为0x0806则表示该以太网数据帧为承载地址解析协议(Address Resolution Protocol,ARP)数据报文的以太网数据帧。如图1d所示,类型指示信息为0x8035则表示该以太网数据帧为承载逆向地址解析协议(Reverse Address Resolution Protocol,RARP)的以太网数据帧。
本申请实施例中用于指示内容中心网络请求包和内容中心网络内容包的类型指示信息可为预设的值,可选地,内容中心网络请求包和内容中心网络内容包的类型指示信息可以相同,如此交换机可进一步根据数据域内容确定接收到的是内容中心网络请求包还是内容中心网络内容包。可选地,内容中心网络请求包和内容中心网络内容包的类型指示信息可以不同,如此交换机可根据类型指示信息确定接收到的是内容中心网络请求包还是内容中心网络内容包。如图1e所示,类型指示信息为0x8624则表示接收到的是内容中文网络请求包或内容中文网络内容包。
可选地,本申请实施例中还可在内容中心网络请求包中添加一个指示位,若需要在该内容中心网络请求包中添加N-STP链路指示信息,则可在该内容中心网络请求包中的该指示位处添加N-STP链路指示信息。一种可选地实施方式中,比如将该指示位设置为1,则表示该内容中心网络请求包中包括N-STP链路指示信息,将该指示位设置为0,则表示该内容中心网络请求包中不包括N-STP链路指示信息。
另一种可选地实施方式中可以在内容中心网络请求包的头部加入一个布尔类型(比如为1bit)字段S-flag,S-flag为TRUE则表示该内容中心网络请求包中包括N-STP链路指示信息;否则,则表示该内容中心网络请求包中不包括N-STP链路指示信息。可选地,N-STP链路指示信息用于指示传输过内容中心网络请求包的所有传输链路中的至少一个传输链路为N-STP链路。
图2示例性示出了本申请实施例提供的一种以太网和内容中心网络混合部署下的数据包传输方法的流程示意图。
基于图1所示的***架构,如图2所示,本申请实施例提供的在双栈交换机一侧实现的一种以太网和内容中心网络混合部署下的数据包传输方法,包括以下步骤:
步骤201,双栈交换机接收请求包;
步骤202,双栈交换机若确定请求包满足预设条件;其中,预设条件包括请求包为第一内容中心网络请求包,第一内容中心网络请求包中包括源媒体访问控制MAC地址域和目的MAC地址域;则执行下述步骤203至步骤204;
步骤203,若第一内容中心网络请求包中不包括N-STP链路指示信息,则执行步骤204;
步骤204,双栈交换机向至少一个第一邻双栈交换机发送第二内容中心网络请求包;第二内容中心网络请求包是双栈交换机向第一内容中心网络请求包中添加N-STP链路指示信息后得到的;本申请实施例中将添加N-STP链路指示信息的第一内容中心网络请求包称为第二内容中心网络请求包。
本申请实施例中的第一内容中心网络请求包和第二内容中心网络请求包均为本申请实施例中的内容中心网络请求包,其中,“第一”和“第二”仅仅用于区别,不具有限定意义;本申请实施例中的第一内容中心网络内容包和第二内容中心网络内容包均为本申请实施例中的内容中心网络内容包,其中,“第一”和“第二”仅仅用于区别,不具有限定意义。
本申请实施例中交换机会将数据转发给下一个邻交换机,针对一个交换机而言,该交换机与多个邻交换机之间的链路既包括STP链路,也包括N-STP链路;该交换机的多个邻交换机中可能既包括双栈交换机,也包括以太网交换机;该交换机与所有邻交换机中的STP链路中可能既包括双栈交换机,也包括以太网交换机;该交换机与所有邻交换机中的N-STP链路中可能既包括双栈交换机,也包括以太网交换机。若该交换机仅包括一个邻交换机,则该交换机的该邻交换机可能是双栈交换机或以太网交换机;该交换机和该邻交换机之间的链路可能是STP链路或N-STP链路。
本申请实施例中将该交换机与所有邻交换机的N-STP链路中包括的双栈交换机称为第一邻双栈交换机,将该交换机与所有邻交换机的STP链路中包括的双栈交换机称为第二邻双栈交换机,该交换机与所有邻交换机的N-STP链路中包括的以太网交换机称为第一邻以太网交换机,将该交换机与所有邻交换机的STP链路中包括的以太网交换机称为第二以太网双栈交换机。
具体来说,本申请实施例中若确定请求包满足预设条件,且确定第一内容中心网络请求包中不包括N-STP链路指示信息时,可以通过N-STP链路发送也可以通过STP链路发送,若通过N-STP链路发送时,则在第一内容中心网络请求包添加N-STP链路指示信息,本申请实施例中将添加N-STP链路指示信息的第一内容中心网络请求包称为第二内容中心网络请求包,并将第二内容中心网络请求包发送给N-STP链路上的双栈交换机。
本申请实施例中若确定请求包满足预设条件,且确定第一内容中心网络请求包中不包括N-STP链路指示信息时,双栈交换机可以根据具体的网络环境,或者一些预设的规则,以及该双栈交换机中的邻交换机中的具体请求来确定是通过N-STP链路还是通过STP链路进行发送,比如预设的规则是该双栈交换机可以向能发送的所有链路进行发送,且该双栈交换机的邻交换机中包括N-STP链路上的邻双栈交换机,也包括STP链路上的邻交换机,此时双栈交换机可以同时既向N-STP链路上的邻双栈交换机发送,也向STP链路上的邻交换机发送,在该过程中,若双栈交换机向N-STP链路上的邻双栈交换机发送,则需要在第一内容中心网络请求包中增加N-STP链路指示信息,本申请实施例中将增加N-STP链路指示信息的第一内容中心网络请求包称为第二内容中心网络请求包,并将第二内容中心网络请求包发送给N-STP链路上的邻双栈交换机。若向STP链路上的邻交换机,则不再添加N-STP链路指示信息,向STP链路上的邻交换机发送不包括N-STP链路指示信息的第一内容中心网络请求包。
本申请实施例中,由于双栈交换机接收到的内容中心网络请求包中包括源MAC地址域和目的MAC地址域,因此可以使在以太网中的以太网交换机根据内容中心网络请求包中的源MAC地址域和目的MAC地址域对内容中心网络请求包进行处理,从而实现了在以太网中部署内容中心网络的目的。
进一步,由于若第一内容中心网络请求包中不包括N-STP链路指示信息,N-STP链路指示信息用于指示传输过第一内容中心网络请求包的所有传输链路中的至少一个传输链路为N-STP链路;则:双栈交换机向第一内容中心网络请求包中添加N-STP链路指示信息,本申请实施例中将添加N-STP链路指示信息的第一内容中心网络请求包称为第二内容中心网络请求包,双栈交换机向至少一个第一邻双栈交换机发送第二内容中心网络请求包;其中,第一邻双栈交换机与双栈交换机之间的链路为N-STP链路。可见,本申请实施例中不仅能够使用以太网中的STP链路,也可以用部署了内容中心网络的以太网中的N-STP链路,增加了可用链路的数量,提高了网络传输性能。
本申请实施例中在以太网中部署双栈交换机的一大优点是可以通过内容中心网络的无环路(loop-free)转发机制发现最优路径。且由于内容中心网络不需要使用二层协议中的环路避免机制,因此双栈交换机在需要洪泛转发内容中心网络请求包时,可以使用二层的N-STP链路。
针对以太网交换机,以太网交换机接收到以太网数据帧、内容中心网络请求包和内容中心网络内容包后,以太网交换机根据接收到的数据中的目的MAC地址域的MAC地址对其进行转发。
针对双栈交换机,图2a示例性示出了本申请实施例提供的一种双栈交换机处理数据的流程示意图,如图2a所示,执行步骤211,双栈交换机将接收到的数据在物理层进行解码、成帧或校验等操作,之后执行步骤212,;步骤212中判断进行操作后的数据是否属于内容中心网络,比如可设置一个分发器模块,用分发器模块通过判断类型指示信息是否为0x8624可判断进行操作后的数据是否属于内容中心网络。双栈交换机若确定接收到的不是内容中心网络的数据,而是以太网数据帧,则执行步骤215,在步骤215中对接收到的数据执行以太网数据帧的相关处理流程,以太网数据帧的相关处理流程比如可以根据二层的MAC转发表,确定出目的MAC地址,从而确定出转发该数据的端口,执行步骤216从该端口转发该以太网数据帧。
双栈交换机若确定接收到的是内容中心网络请求包或内容中心网络内容包,则执行步骤213,在步骤213中对接收到的数据执行内容中心网络的相关处理流程,并确定转发该数据的端口,执行步骤214从该端口转发该内容中心网络的数据。内容中心网络的相关处理流程是根据内容名字对内容中心网络请求包或内容中心网络内容包进行转发。也就是说,双栈交换机是一个支持内容中心网络的转发节点,可基于内容名字转发内容中心网络请求包和内容中心网络内容包(三层转发),也可基于MAC地址转发以太网数据帧(二层转发),并且可以直接与二层的以太网交换机相连。如此,可见,本申请实施例中双栈交换机可以充分实现内容中心网络请求包和内容中心网络内容包中以内容为中心的优势。
上述内容中提高一种可选地实施方式中是在内容中心网络请求包和内容中心网络内容包中设置一个类型指示信息,类型指示信息详细论述可参加上述内容,可选地,双栈交换机确定请求包满足预设条件,包括:双栈交换机根据请求包中包括的类型指示信息,确定出请求包为内容中心网络请求包。
可选地,类型指示信息可以仅仅指示出接收到的请求包是属于内容中心网络的,即内容中心网络请求包和内容中心网络内容包的类型指示信息相同,如此,一方面可以根据接收到的数据确定出接收到的是请求包,另一方面可根据类型指示信息确定接收到的是内容中心网络的数据,因此综合起来可以确定出接收到的是内容中心网络请求包。另一种可选地实施方案中,内容中心网络请求包和内容中心网络内容包的类型指示信息不同,直接根据类型指示信息可以确定出接收到的是内容中心网络请求包。如此,可以通过解析出的少量数据即确定出接收到的是否为内容中心网络请求包,提高了数据处理速度。
一种可选地方式中预设条件还包括:在接收到第一内容中心网络请求包之前未收到请求包标识与第一内容中心网络请求包的请求包标识相同的内容中心网络请求包;其中,一个内容中心网络请求包对应一个请求包标识。如此,可以实现对请求包的去重处理,从而实现了在N-STP链路下避免环路的产生以及信息的冗余。请求包标识可以成为Nonce,一个请求包标识可以唯一标识该内容中心网络请求包。举个例子,两个终端分别生成内容请求包1和内容请求包2,内容请求包1和内容请求包2需要请求的内容相同,则内容请求包1和内容请求包2的内容名字相同,但是内容请求包1和内容请求包2是两个请求包,是两个终端分别生成的,内容请求包1和内容请求包2的请求包标识不同。再举一个例子,终端在不同时间分别生成了两个内容请求包,分别为内容请求包3和内容请求包4,内容请求包3和内容请求包4需要请求的内容相同,则内容请求包3和内容请求包4的内容名字相同,但是内容请求包3和内容请求包4是两个请求包,是同一个终端在不同时间生成的,因此内容请求包3和内容请求包4的请求包标识不同。
一种可选地实施方式中,双栈交换机可以存储接收到的内容中心网络请求包的请求包标识,比如可以存储在兴趣请求表(Pending Interest Table,PIT)中,当双栈交换机接收到一个内容中心网络请求包时,先从PIT表格中查找,看是否在之前已经收到过相同请求标识的内容中心网络请求包,若发现PIT表格中存在与内容中心网络请求包的请求标识相同的请求标识,则认为此次接收到的内容中心网络请求包是一个重复接收到的,则丢弃该接收到的内容中心网络请求包。若发现PIT表格中不存在与内容中心网络请求包的请求标识相同的请求标识,则认为此次接收到的内容中心网络请求包是首次接收到的,则进行相应的转发。如此,双栈交换机通过去重处理,避免了环路的形成。
可选地,本申请实施例中在双栈交换机中可以存储内容存储器(Content Store,CS)、PIT和转发信息库(Forwarding Information Base,FIB)中的任一项或任多项。
图2b示例性示出了本申请实施例提供的一种可能的CS的表格示意图,图2c示例性示出了本申请实施例提供的一种可能的PIT的表格示意图,图2d示例性示出了本申请实施例提供的一种可能的FIB的表格示意图。如图2b所示,可选地,CS中存储有内容名字与内容中心网络内容包内容的关联关系;其中,一个内容名字对应的内容中心网络请求包用于获取该内容名字关联的内容中心网络内容包内容。也就是说,本申请实施例中,双栈交换机可以将接收到的内容中心网络内容包中的内容中心网络内容包内容进行缓存,若后续有其它内容中心网络请求包需要请求该内容中心网络内容包内容,则可直接从该双栈交换机中获取,从而节省了时延。
如图2c所示,可选地,PIT中存储有内容名字、接收该内容名字对应的内容中心网络请求包的端口号、接收到的该内容名字对应的内容中心网络请求包中的源MAC地址三者之间的关联关系。如此,可以通过PIT表格记录下接收到的内容中心网络请求包的源MAC地址和接收端口,从而可将该内容中心网络请求包对应的内容中心网络内容包通过该接收端口返回至源MAC地址指示的终端设备,实现了内容中心网络内容包的传输链路与该内容中心网络内容包对应的内容中心网络请求包的传输链路相同的目的,即从一条传输链路上传输了内容中心网络请求包,则还从该条传输链路上返回该内容中心网络请求包对应的内容中心网络内容包。
如图2d所示,可选地,FIB中存储有内容名字、发送该内容名字对应的内容中心网络请求包的端口号、发送该内容名字对应的内容中心网络请求包的下一跳MAC地址三者之间的关联关系。或者,FIB中存储有内容名字、接收该内容名字对应的内容中心网络内容包的端口号、接收到的该接收该内容名字对应的内容中心网络内容包中的源MAC地址三者之间的关联关系。也就是说,FIB表格中记录了内容中心网络请求包的下一跳MAC地址和发送端口,内容中心网络请求包的下一跳MAC地址和发送端口同时也是该内容中心网络请求包对应的内容中心网络内容包的接收端口和源MAC地址。通过查询FIB可以确定出内容名字对应的内容中心网络请求包应该发送到哪里,提高了数据传输速率。可选地,FIB表格中端口号和MAC地址的关联关系可以预先设置,也可以在后续传输过程中自学习。比如当接收到一个内容中心网络内容包时,将该内容中心网络内容包的内容名字、接收该内容名字的内容中心网络内容包的端口号和接收该内容名字对应的内容中心网络内容包中的源MAC地址录入FIB中。
本申请实施例中在PIT和FIB中存在端口号和MAC地址的关联关系,为本申请实施例中解决三层中的内容名字与二层中的MAC地址映射问题提供了解决方案,从而实现了内容中心网络请求包与二层以太网直接耦合。
可选地,预设条件还包括:双栈交换机在内容存储器CS中未查询到第一内容中心网络请求包的内容名字关联的内容中心网络内容包内容。
另一种可选地方案中,双栈交换机接收第一内容中心网络请求包之后,还包括:双栈交换机若在CS中查询到第一内容中心网络请求包的内容名字关联的内容中心网络内容包内容,则:双栈交换机将内容中心网络内容包内容封装为第一内容中心网络内容包的数据域,并将第一内容中心网络内容包的目标MAC地址域赋值为第一内容中心网络请求包的源MAC;将第一内容中心网络内容包中的源MAC地址域赋值为双栈交换机的MAC地址;双栈交换机发送赋值MAC地址后的第一内容中心网络内容包。如此,双栈交换机可以将接收到的内容中心网络内容包中的内容中心网络内容包内容进行缓存,若后续有其它第一内容中心网络请求包需要请求该内容中心网络内容包内容,则可直接从该双栈交换机中获取,从而节省了时延。
可选地,预设条件还包括:双栈交换机在兴趣请求表PIT中未查询到第一内容中心网络请求包的内容名字关联的:端口号和MAC地址。可选地,无论双栈交换机在兴趣请求表PIT中是否查询到第一内容中心网络请求包的内容名字关联的端口号和MAC地址,均将第一内容中心网络请求包的内容名字、接收第一内容中心网络请求包的端口号,第一内容中心网络请求包中的源MAC地址存储至PIT表格中。不同的是,如果在PIT中查询到第一内容中心网络请求包的内容名字关联的端口号和MAC地址,则PIT表格中记录后丢弃该第一内容中心网络请求包,也就是不转发该第一内容中心网络请求包;如果在PIT中未查询到第一内容中心网络请求包的内容名字关联的端口号和MAC地址,则PIT表格中记录后转发该第一内容中心网络请求包。如此,可将该第一内容中心网络请求包对应的内容中心网络内容包通过该接收端口返回至源MAC地址指示的终端设备,实现了内容中心网络内容包的传输链路与该内容中心网络内容包对应的第一内容中心网络请求包的传输链路相同的目的。
可选地,预设条件还包括:双栈交换机在转发信息库FIB中未查询到第一内容中心网络请求包的内容名字关联的:端口号和MAC地址。另一种可选地方案中,双栈交换机接收第一内容中心网络请求包之后,还包括:若双栈交换机在FIB中查询到第一内容中心网络请求包的内容名字关联的:端口号和MAC地址,则:双栈交换机将第一内容中心网络请求包中的目标MAC地址域赋值为在FIB中查询到的第一内容中心网络请求包的内容名字对应的MAC地址;将第一内容中心网络请求包中的源MAC地址域赋值为双栈交换机的MAC地址;双栈交换机发送赋值MAC地址后的第一内容中心网络请求包。如此可通过查询FIB可以确定出内容名字对应的第一内容中心网络请求包应该发送到哪里,提高了数据传输速率。
本申请实施例提供一种可选地方案,双栈交换机向至少一个第一邻双栈交换机发送第二内容中心网络请求包,包括:双栈交换机将第二内容中心网络请求包中的源MAC地址域赋值为双栈交换机的MAC地址;双栈交换机向至少一个第一邻双栈交换机发送赋值MAC地址的第二内容中心网络请求包。如此,可将该第一内容中心网络请求包对应的内容中心网络内容包返回至源MAC地址。
可选地,双栈交换机若确定第一内容中心网络请求包满足预设条件,且第一内容中心网络请求包中不包括N-STP链路指示信息之后,还包括:双栈交换机向生成树协议STP链路中包括的邻交换机发送第一内容中心网络请求包。也就是说,若第一内容中心网络请求包中不包括N-STP链路指示信息,则可以向STP网络中指示的下一跳交换机发送,也可以向N-STP网络中的一个或多个邻双栈交换机发送。如此,一方面可以根据具体网络环境因素等选择更优的发送路径,另一方面也可以使接收端从多个接收路径中选择出最优的路径,比如双栈交换机通过两个邻交换机发送给下一跳交换机,下一跳交换机可以选择出最早接收到第一内容中心网络请求包的链路作为内容中心网络内容包返回时的路径。
进一步,可选地,双栈交换机向STP链路中包括的邻交换机发送第一内容中心网络请求包,包括:双栈交换机将第一内容中心网络请求包中的源MAC地址域赋值为双栈交换机的MAC地址;双栈交换机向STP链路中包括的邻交换机发送赋值MAC地址的第一内容中心网络请求包。一方面可以使STP链路中的以太网交换机根据该第一内容中心网络请求包中的MAC地址正常转发该第一内容中心网络请求包,另一方面,也可以实现内容中心网络内容包的传输链路与该内容中心网络内容包对应的第一内容中心网络请求包的传输链路相同的目的。
另一种可选地实施例中,双栈交换机若确定请求包满足预设条件之后,还包括:若第一内容中心网络请求包中包括N-STP链路指示信息;则:双栈交换机向至少一个第一邻双栈交换机和/或至少一个第二邻双栈交换机发送第一内容中心网络请求包;其中,第二邻双栈交换机与双栈交换机之间的链路为STP链路。可选地,双栈交换机可以向所有邻双栈交换机洪泛或广播该第一内容中心网络请求包,或者双栈交换机可以向所有邻双栈交换机中的一个或多个转发该第一内容中心网络请求包。也就是说,如果第一内容中心网络请求包中包括N-STP链路指示信息,则后续仅仅在双栈交换机上传输该第一内容中心网络请求包,且由于双栈交换机有去重机制,且也添加有源MAC地址域,因此可避免在N-STP链路上传输过的第一内容中心网络请求包的传输错误。
进一步,可选地,双栈交换机向至少一个第一邻双栈交换机和/或至少一个第二邻双栈交换机发送第一内容中心网络请求包,包括:双栈交换机将第一内容中心网络请求包中的源MAC地址域赋值为双栈交换机的MAC地址;双栈交换机向至少一个第一邻双栈交换机和/或至少一个第二邻双栈交换机发送赋值MAC地址的第一内容中心网络请求包。如此,可将该第一内容中心网络请求包对应的内容中心网络内容包返回至源MAC地址。
本申请实施例中还提供另一种可选地实施例,双栈交换机接收第二内容中心网络内容包;其中,第二内容中心网络内容包中包括源MAC地址域和目的MAC地址域;双栈交换机若在兴趣请求表PIT中查询出第二内容中心网络内容包的内容名字关联的N个端口号和N个MAC地址,其中,N个端口号N个MAC地址一一对应;N为大于等于1的整数,则:针对N个端口号中的每个端口号,双栈交换机对第二内容中心网络内容包中的目标MAC地址域赋值为该端口号关联的MAC地址,对源MAC地址域赋值为双栈交换机的MAC地址,将赋值MAC地址后的第二内容中心网络内容包从该端口发送出去;其中,第二内容中心网络内容包的内容名字与第二内容中心网络内容包对应的内容中心网络请求包的内容名字相同;PIT中存储有内容名字、接收该内容名字对应的内容中心网络请求包的端口号、接收到的该内容名字对应的内容中心网络请求包中的源MAC地址三者之间的关联关系。
举个例子,如图2c所示,PIT表格中查询到第二内容中心网络内容包的内容名字为“/youtube/soccer”,根据PIT查询到端口号为2,对应的MAC地址有三个,分别为“80:7A:6F:00:88:20”、“34:87:01:30:55:EE”和“FE:32:88:65:12:AC”。则将第二内容中心网络内容包中的目标MAC地址域赋值为“80:7A:6F:00:88:20”,并从端口2发出去;再将第二内容中心网络内容包中的目标MAC地址域赋值为“34:87:01:30:55:EE”,并从端口2发出去;再将第二内容中心网络内容包中的目标MAC地址域赋值为“FE:32:88:65:12:AC”,并从端口2发出去。
从上述内容可看出,本申请实施例中根据接收到的一个内容中心网络内容包,向请求该内容中心网络内容包的每个终端设备都返回了一个内容中心网络内容包,减少了传输过程中的数据量,节省了网络带宽。
可选地,双栈交换机接收第二内容中心网络内容包之后,还包括:双栈交换机若在转发信息库FIB中未查询到第二内容中心网络内容包的内容名字关联的:端口号和MAC地址,则:双栈交换机将第二内容中心网络内容包的内容名字、接收第二内容中心网络内容包的的端口号、接收第二内容中心网络内容包的端口号的MAC地址三者之间的关联关系存入FIB中。如此,可实现FIB表格中内容名字、端口号和MAC地址三者关联关系的自学习。
基于上述内容,图2e示例性示出了本申请实施例中还提供一种以太网和内容中心网络混合部署下的数据包传输方法的流程示意图,如图2e所示,该方法包括:
步骤221,判断接收到的是内容中心网络的数据还是以太网数据帧;若是以太网数据帧,则执行步骤222;若是内容中心网络的数据,则执行步骤223;
步骤222,转发以太网数据帧;
步骤223,判断是内容中心网络请求包还是内容中心网络内容包;若是内容中心网络请求包,则执行步骤224;若是内容中心网络内容包,则执行步骤237;
步骤224,判断CS是否命中,也就是说查询CS,判断CS中是否存储有内容中心网络请求包的内容名字对应的内容中心网络内容包内容;若命中,即查询到,则执行步骤225;若未命中,则执行步骤227;
步骤225,将该内容中心网络内容包内容封装为第一内容中心网络内容包的数据域,并将该第一内容中心网络内容包的目标MAC地址域赋值为该内容中心网络请求包的源MAC;将该第一内容中心网络内容包中的源MAC地址域赋值为该双栈交换机的MAC地址;双栈交换机发送赋值MAC地址后的该第一内容中心网络内容包;
步骤226,在PIT中记录该内容中心网络请求包的内容名字、接收该内容名字对应的内容中心网络请求包的端口号、接收到的该内容名字对应的内容中心网络请求包中的源MAC地址三者之间的关联关系;可选地,在步骤227执行前可以对接收到的内容中心网络请求包进行去重;
步骤227,判断PIT是否命中,也就是说查询PIT,判断PIT中是否存储有内容中心网络请求包的内容名字关联的端口号和MAC地址;若命中,则执行步骤228;若未命中,则执行步骤229;
步骤228,丢弃该内容网络中心请求包;
步骤229,判断FIB是否命中,也就是说查询FIB,判断FIB中是否存储有内容中心网络请求包的内容名字关联的端口号和MAC地址;若命中,则执行步骤230;若未命中,则执行步骤231;
步骤230,将该内容中心网络请求包中的目标MAC地址域赋值为在该FIB中查询到的该内容中心网络请求包的内容名字对应的MAC地址;将该内容中心网络请求包中的源MAC地址域赋值为该双栈交换机的MAC地址;该双栈交换机发送赋值MAC地址后的该内容中心网络请求包;
步骤231,判断内容中心网络请求包中是否包括N-STP链路指示信息;若包括则执行步骤232;若不包括则执行步骤235和/或步骤234;
步骤232,将该内容中心网络请求包中的源MAC地址域赋值为该双栈交换机的MAC地址;
步骤233,该双栈交换机向至少一个该第一邻双栈交换机和/或至少一个第二邻双栈交换机发送赋值MAC地址的该内容中心网络请求包;
步骤234,在内容中心网络请求包中加入N-STP链路指示信息;
步骤235,将该内容中心网络请求包中的源MAC地址域赋值为该双栈交换机的MAC地址;
步骤236,该双栈交换机向该STP链路中包括的邻交换机发送赋值MAC地址的该内容中心网络请求包;
步骤237,判断FIB是否命中,也就是说查询FIB,判断FIB中是否存储有内容中心网络内容包的内容名字关联的端口号和MAC地址;若命中,则执行步骤239;若未命中,则执行步骤238;
步骤238,将该第二内容中心网络内容包的内容名字、接收该第二内容中心网络内容包的的端口号、接收该第二内容中心网络内容包的端口号的MAC地址三者之间的关联关系存入该FIB中;
步骤239,判断PIT是否命中,也就是说查询PIT,判断PIT中是否存储有内容中心网络内容包的内容名字关联的端口号和MAC地址;若命中,则执行步骤240;若未命中,则执行步骤241;
步骤240,在PIT中查询出该第二内容中心网络内容包的内容名字关联的N个端口号和N个MAC地址;针对该N个端口号中的每个端口号,该双栈交换机对该第二内容中心网络内容包中的目标MAC地址域赋值为该端口号关联的MAC地址,对源MAC地址域赋值为该双栈交换机的MAC地址,将赋值MAC地址后的该第二内容中心网络内容包从该端口发送出去;
步骤241,丢弃该内容网络中心请求包。
基于上述内容,图2f示例性示出了本申请实施例中提供的一种以太网和内容中心网络混合部署下的数据包传输方法的流程示意图,如图2f所示,终端设备261与双栈交换机262、以太网交换机263、以太网交换机264、双栈交换机266、以太网交换机267和服务器268之间的链路为STP链路,而双栈交换机262、双栈交换机265和双栈交换机266之间的链路为N-STP链路。终端设备261向双栈交换机262发送内容中心网络请求包,则双栈交换机一方面通过STP链路发送至以太网交换机263,另一方面通过N-STP链路发送给双栈交换机265;双栈交换机265在收到内容中心网络请求包后,在双栈交换机265的CS中查询到该内容中心网络请求包的内容名字关联的该内容中心网络请求包所请求的内容中心网络内容包内容,则双栈交换机265将查询到的内容中心网络内容包内容通过内容中心网络内容包传输给终端设备261。
可见,本申请实施例中通过利用N-STP链路转发内容中心网络内容包来实现内容中心网络网络的功能,利用内容中心网络的缓存特性,提高网络效率,且显著改善链路负载均衡、降低内容下载时延并缓解源服务器压力。
通过在校园网和商用网络拓扑上测试,在以太网中部署25%的双栈交换机时(其余节点为以太网交换机)时,本申请实施例中的双栈交换机可以实现以下有益效果:第一,本申请实施例方案可以使用60%的N-STP物理链路;本申请实施例与相同拓扑下完全由以太网交换机组成的网络相比,降低70%的平均链路负载;本申请实施例与相同拓扑下完全由以太网交换机组成的网络相比,降低50%的内容中心网络相关数据平均下载时延;本申请实施例与相同拓扑下完全由以太网交换机组成的网络相比,降低65%的内容中心网络相关内容源服务器访问负荷。
基于上述内容,图2g示例性示出了本申请实施例中提供的一种以太网和内容中心网络混合部署下的数据包传输方法的流程示意图,如图2g所示,终端设备271与双栈交换机272、以太网交换机273、双栈交换机274、双栈交换机275和服务器之间的链路为STP链路,而双栈交换机272和双栈交换机274之间的链路为N-STP链路。终端设备271向双栈交换机272发送内容中心网络请求包,则双栈交换机一方面通过STP链路发送至以太网交换机273,另一方面通过N-STP链路发送给双栈交换机274;以太网交换机273将内容中心网络请求包通过STP链路发送给双栈交换机274;双栈交换机274先收到双栈交换机272发送的内容中心网络请求包,之后收到以太网交换机273发送的内容中心网络请求包,双栈交换机274根据内容中心网络请求包的请求包标识去重,具体来说,双栈交换机274先收到双栈交换机272发送的内容中心网络请求包,并在PIT中录入内容中心网络请求包的内容名字和内容中心网络请求包的请求包标识,在接收到以太网交换机273发送的内容中心网络请求包之后,查询PIT,发现已经存在请求包标识与以太网交换机273发送的内容中心网络请求包的请求包标识相同的内容中心网络请求包,则双栈交换机274将以太网交换机273发送的内容中心网络请求包丢弃。双栈交换机将内容中心网络请求包发给双栈交换机275,并最终达到服务器276,服务器276将返回的内容中心网络内容包依次通过双栈交换机275、双栈交换机274、双栈交换机272返回至终端设备271。
通过上述示例可以看出,经过双栈交换机274的去重,从多条路径中选择出了一条时延最短的路径用于传输内容中心网络内容包。进一步,本申请实施例中可选地,双栈交换机和以太网交换机在接收到以太网数据帧时,根据以太网数据帧中的包括源MAC地址域和目的MAC地址域对该以太网数据帧进行处理即可,可见,本申请实施例中在以太网网络中部署内容中心网络之后,双栈交换机和以太网交换机既支持对基于IP协议的以太网数据帧的处理,又可支持内容中心网络请求包的处理,且对于以太网数据帧而言,双栈交换机和以太网交换机根据目的MAC地址域对其进行二层转发,且现有的MAC地址学习模式、ARP/RARP协议和STP等相关机制都续发挥作用,可见,本申请实施例更好的兼容了现有技术。
由于本申请实施例中可以实现内容中心网络和以太网的混合模型,因此实现了增量式的部署内容中心网络的过程,且随着内容中心网络的设备和应用数量的增加,部署内容中心网络产生的效益也应该越来越高。
进一步,本申请实施例中在以太网上承载内容中心网络的设计方案有良好的通用性和可扩展性,并且开销可控,使其不仅适用于有线PC主机网络,也可以扩展到由(计算、供电、存储资源受限的)无线智能设备组成的网络中。
图3示例性示出了本申请实施例提供的一种以太网和内容中心网络混合部署下的双栈交换机的结构示意图。
基于相同构思,本申请实施例提供一种以太网和内容中心网络混合部署下的双栈交换机300,用于执行上述方法中的任一个方案。如图3所示,双栈交换机300包括处理器301、收发器302、存储器303和通信接口304;其中,处理器301、收发器302、存储器303和通信接口304通过总线305相互连接。
总线305可以是外设部件互连标准(peripheral component interconnect,PCI)总线或扩展工业标准结构(extended industry standard architecture,EISA)总线等。总线可以分为地址总线、数据总线、控制总线等。为便于表示,图3中仅用一条粗线表示,但并不表示仅有一根总线或一种类型的总线。
存储器303可以包括易失性存储器(volatile memory),例如随机存取存储器(random-access memory,RAM);存储器也可以包括非易失性存储器(non-volatilememory),例如快闪存储器(flash memory),硬盘(hard disk drive,HDD)或固态硬盘(solid-state drive,SSD);存储器303还可以包括上述种类的存储器的组合。
通信接口304可以为有线通信接入口,无线通信接口或其组合,其中,有线通信接口例如可以为以太网接口。以太网接口可以是光接口,电接口或其组合。无线通信接口可以为WLAN接口。
处理器301可以是中央处理器(central processing unit,CPU),网络处理器(network processor,NP)或者CPU和NP的组合。处理器301还可以进一步包括硬件芯片。上述硬件芯片可以是专用集成电路(application-specific integrated circuit,ASIC),可编程逻辑器件(programmable logic device,PLD)或其组合。上述PLD可以是复杂可编程逻辑器件(complex programmable logic device,CPLD),现场可编程逻辑门阵列(field-programmable gate array,FPGA),通用阵列逻辑(generic array logic,GAL)或其任意组合。
可选地,存储器303还可以用于存储程序指令,处理器301调用该存储器303中存储的程序指令,可以执行上述方案中所示实施例中的一个或多个步骤,或其中可选的实施方式,使得双栈交换机300实现上述方法中双栈交换机的功能。
处理器301用于根据执行存储器存储的指令,并控制收发器302进行信号接收和信号发送,当处理器301执行存储器存储的指令时,双栈交换机300用于执行下述内容。
收发器302,用于接收请求包;处理器301,用于若确定请求包满足预设条件,确定第一内容中心网络请求包中不包括N-STP链路指示信息;收发器302,用于向至少一个第一邻双栈交换机发送第二内容中心网络请求包;其中,预设条件包括请求包为第一内容中心网络请求包,第一内容中心网络请求包中包括源MAC地址域和目的MAC地址域;N-STP链路指示信息用于指示传输过第一内容中心网络请求包的所有传输链路中的至少一个传输链路为N-STP链路;第一邻双栈交换机与双栈交换机之间的链路为N-STP链路;第二内容中心网络请求包是向第一内容中心网络请求包中添加N-STP链路指示信息后得到的。
可选地,收发器302,具体用于:通过处理器301将第二内容中心网络请求包中的源MAC地址域赋值为双栈交换机的MAC地址;向至少一个第一邻双栈交换机发送赋值MAC地址的第二内容中心网络请求包。
可选地,收发器302,还用于:若通过处理器301确定第一内容中心网络请求包满足预设条件,且第一内容中心网络请求包中不包括N-STP链路指示信息,则:向STP链路中包括的邻交换机发送第一内容中心网络请求包。
可选地,处理器301,还用于:将第一内容中心网络请求包中的源MAC地址域赋值为双栈交换机的MAC地址;收发器302,具体用于:向STP链路中包括的邻交换机发送赋值MAC地址的第一内容中心网络请求包。
可选地,收发器302,还用于:若通过处理器301确定请求包满足预设条件,且第一内容中心网络请求包中包括N-STP链路指示信息;则:向至少一个第一邻双栈交换机和/或至少一个第二邻双栈交换机发送第一内容中心网络请求包;其中,第二邻双栈交换机与双栈交换机之间的链路为STP链路。
可选地,处理器301,还用于:将第一内容中心网络请求包中的源MAC地址域赋值为双栈交换机的MAC地址;收发器302,具体用于:向至少一个第一邻双栈交换机和/或至少一个第二邻双栈交换机发送赋值MAC地址的第一内容中心网络请求包。
可选地,预设条件还包括:通过处理器301在CS中未查询到第一内容中心网络请求包的内容名字关联的内容中心网络内容包内容;其中,CS中存储有内容名字与内容中心网络内容包内容的关联关系;其中,一个内容名字对应的内容中心网络请求包用于获取该内容名字关联的内容中心网络内容包内容。
可选地,处理器301,还用于:在通过收发器302接收第一内容中心网络请求包之后,若在CS中查询到第一内容中心网络请求包的内容名字关联的内容中心网络内容包内容,则:将内容中心网络内容包内容封装为第一内容中心网络内容包的数据域,并将第一内容中心网络内容包的目标MAC地址域赋值为第一内容中心网络请求包的源MAC;将第一内容中心网络内容包中的源MAC地址域赋值为双栈交换机的MAC地址;收发器302,还用于:发送赋值MAC地址后的第一内容中心网络内容包。
可选地,预设条件还包括:通过处理器301在PIT中未查询到第一内容中心网络请求包的内容名字关联的:端口号和MAC地址,其中,PIT中存储有内容名字、接收该内容名字对应的内容中心网络请求包的端口号、接收到的该内容名字对应的内容中心网络请求包中的源MAC地址三者之间的关联关系。
可选地,预设条件还包括:通过处理器301在转发信息库FIB中未查询到第一内容中心网络请求包的内容名字关联的:端口号和MAC地址;其中,FIB中存储有内容名字、发送该内容名字对应的内容中心网络请求包的端口号、发送该内容名字对应的内容中心网络请求包的下一跳MAC地址三者之间的关联关系;或者,FIB中存储有内容名字、接收该内容名字对应的内容中心网络内容包的端口号、接收到的该接收该内容名字对应的内容中心网络内容包中的源MAC地址三者之间的关联关系。
可选地,处理器301,还用于:在通过收发器302接收第一内容中心网络请求包之后,若确定在FIB中查询到第一内容中心网络请求包的内容名字关联的:端口号和MAC地址,则:将第一内容中心网络请求包中的目标MAC地址域赋值为在FIB中查询到的第一内容中心网络请求包的内容名字对应的MAC地址;将第一内容中心网络请求包中的源MAC地址域赋值为双栈交换机的MAC地址;收发器302,还用于:发送赋值MAC地址后的第一内容中心网络请求包。
可选地,预设条件还包括:在通过收发器302接收到第一内容中心网络请求包之前未收到请求包标识与第一内容中心网络请求包的请求包标识相同的内容中心网络请求包;其中,一个内容中心网络请求包对应一个请求包标识。
可选地,收发器302,还用于:接收第二内容中心网络内容包;其中,第二内容中心网络内容包中包括源MAC地址域和目的MAC地址域;处理器301,还用于:若在PIT中查询出第二内容中心网络内容包的内容名字关联的N个端口号和N个MAC地址,其中,N个端口号N个MAC地址一一对应;N为大于等于1的整数,则:针对N个端口号中的每个端口号,对第二内容中心网络内容包中的目标MAC地址域赋值为该端口号关联的MAC地址,对源MAC地址域赋值为双栈交换机的MAC地址;收发器302,还用于:将赋值MAC地址后的第二内容中心网络内容包从该端口发送出去;
其中,第二内容中心网络内容包的内容名字与第二内容中心网络内容包对应的内容中心网络请求包的内容名字相同;PIT中存储有内容名字、接收该内容名字对应的内容中心网络请求包的端口号、接收到的该内容名字对应的内容中心网络请求包中的源MAC地址三者之间的关联关系。
可选地,处理器301,还用于:在通过收发器302接收第二内容中心网络内容包之后,若确定在FIB中未查询到第二内容中心网络内容包的内容名字关联的:端口号和MAC地址,则:将第二内容中心网络内容包的内容名字、接收第二内容中心网络内容包的的端口号、接收第二内容中心网络内容包的端口号的MAC地址三者之间的关联关系存入FIB中;其中,FIB中存储有内容名字、发送该内容名字对应的内容中心网络请求包的端口号、发送该内容名字对应的内容中心网络请求包的下一跳MAC地址三者之间的关联关系;或者,FIB中存储有内容名字、接收该内容名字对应的内容中心网络内容包的端口号、接收到的该接收该内容名字对应的内容中心网络内容包中的源MAC地址三者之间的关联关系。
图4示例性示出了本申请实施例提供的一种以太网和内容中心网络混合部署下的双栈交换机的结构示意图。
基于相同构思,本申请实施例提供一种以太网和内容中心网络混合部署下的双栈交换机,用于执行上述方法流程。双栈交换机400可以用于执行上述方法中的任一个方案。如图4所示,双栈交换机400包括接收单元401、处理单元402和发送单元403。
接收单元401,用于接收请求包;处理单元402,用于若确定请求包满足预设条件,确定第一内容中心网络请求包中不包括N-STP链路指示信息;发送单元403,用于向至少一个第一邻双栈交换机发送第二内容中心网络请求包;其中,预设条件包括请求包为第一内容中心网络请求包,第一内容中心网络请求包中包括源MAC地址域和目的MAC地址域;N-STP链路指示信息用于指示传输过第一内容中心网络请求包的所有传输链路中的至少一个传输链路为N-STP链路;第一邻双栈交换机与双栈交换机之间的链路为N-STP链路;第二内容中心网络请求包是向第一内容中心网络请求包中添加N-STP链路指示信息后得到的。
可选地,发送单元403,具体用于:通过处理单元402将第二内容中心网络请求包中的源MAC地址域赋值为双栈交换机的MAC地址;向至少一个第一邻双栈交换机发送赋值MAC地址的第二内容中心网络请求包。
可选地,发送单元403,还用于:若通过处理单元402确定第一内容中心网络请求包满足预设条件,且第一内容中心网络请求包中不包括N-STP链路指示信息,则:向STP链路中包括的邻交换机发送第一内容中心网络请求包。
可选地,处理单元402,还用于:将第一内容中心网络请求包中的源MAC地址域赋值为双栈交换机的MAC地址;发送单元403,具体用于:向STP链路中包括的邻交换机发送赋值MAC地址的第一内容中心网络请求包。
可选地,发送单元403,还用于:若通过处理单元402确定请求包满足预设条件,且第一内容中心网络请求包中包括N-STP链路指示信息;则:向至少一个第一邻双栈交换机和/或至少一个第二邻双栈交换机发送第一内容中心网络请求包;其中,第二邻双栈交换机与双栈交换机之间的链路为STP链路。
可选地,处理单元402,还用于:将第一内容中心网络请求包中的源MAC地址域赋值为双栈交换机的MAC地址;发送单元403,具体用于:向至少一个第一邻双栈交换机和/或至少一个第二邻双栈交换机发送赋值MAC地址的第一内容中心网络请求包。
可选地,预设条件还包括:通过处理单元402在CS中未查询到第一内容中心网络请求包的内容名字关联的内容中心网络内容包内容;其中,CS中存储有内容名字与内容中心网络内容包内容的关联关系;其中,一个内容名字对应的内容中心网络请求包用于获取该内容名字关联的内容中心网络内容包内容。
可选地,处理单元402,还用于:在通过接收单元401接收第一内容中心网络请求包之后,若在CS中查询到第一内容中心网络请求包的内容名字关联的内容中心网络内容包内容,则:将内容中心网络内容包内容封装为第一内容中心网络内容包的数据域,并将第一内容中心网络内容包的目标MAC地址域赋值为第一内容中心网络请求包的源MAC;将第一内容中心网络内容包中的源MAC地址域赋值为双栈交换机的MAC地址;发送单元403,还用于:发送赋值MAC地址后的第一内容中心网络内容包。
可选地,预设条件还包括:通过处理单元402在PIT中未查询到第一内容中心网络请求包的内容名字关联的:端口号和MAC地址;其中,PIT中存储有内容名字、接收该内容名字对应的内容中心网络请求包的端口号、接收到的该内容名字对应的内容中心网络请求包中的源MAC地址三者之间的关联关系。
可选地,预设条件还包括:通过处理单元402在FIB中未查询到第一内容中心网络请求包的内容名字关联的:端口号和MAC地址;其中,FIB中存储有内容名字、发送该内容名字对应的内容中心网络请求包的端口号、发送该内容名字对应的内容中心网络请求包的下一跳MAC地址三者之间的关联关系;或者,FIB中存储有内容名字、接收该内容名字对应的内容中心网络内容包的端口号、接收到的该接收该内容名字对应的内容中心网络内容包中的源MAC地址三者之间的关联关系。
可选地,处理单元402,还用于:在通过接收单元401接收第一内容中心网络请求包之后,若确定在FIB中查询到第一内容中心网络请求包的内容名字关联的:端口号和MAC地址,则:将第一内容中心网络请求包中的目标MAC地址域赋值为在FIB中查询到的第一内容中心网络请求包的内容名字对应的MAC地址;将第一内容中心网络请求包中的源MAC地址域赋值为双栈交换机的MAC地址;发送单元403,还用于:发送赋值MAC地址后的第一内容中心网络请求包。
可选地,预设条件还包括:在通过接收单元401接收到第一内容中心网络请求包之前未收到请求包标识与第一内容中心网络请求包的请求包标识相同的内容中心网络请求包;其中,一个内容中心网络请求包对应一个请求包标识。
可选地,接收单元401,还用于:接收第二内容中心网络内容包;其中,第二内容中心网络内容包中包括源MAC地址域和目的MAC地址域;处理单元402,还用于:若在PIT中查询出第二内容中心网络内容包的内容名字关联的N个端口号和N个MAC地址,其中,N个端口号N个MAC地址一一对应;N为大于等于1的整数,则:针对N个端口号中的每个端口号,对第二内容中心网络内容包中的目标MAC地址域赋值为该端口号关联的MAC地址,对源MAC地址域赋值为双栈交换机的MAC地址;发送单元403,还用于:将赋值MAC地址后的第二内容中心网络内容包从该端口发送出去;
其中,第二内容中心网络内容包的内容名字与第二内容中心网络内容包对应的内容中心网络请求包的内容名字相同;PIT中存储有内容名字、接收该内容名字对应的内容中心网络请求包的端口号、接收到的该内容名字对应的内容中心网络请求包中的源MAC地址三者之间的关联关系。
可选地,处理单元402,还用于:在通过接收单元401接收第二内容中心网络内容包之后,若确定在转发信息库FIB中未查询到第二内容中心网络内容包的内容名字关联的:端口号和MAC地址,则:将第二内容中心网络内容包的内容名字、接收第二内容中心网络内容包的的端口号、接收第二内容中心网络内容包的端口号的MAC地址三者之间的关联关系存入FIB中;其中,FIB中存储有内容名字、发送该内容名字对应的内容中心网络请求包的端口号、发送该内容名字对应的内容中心网络请求包的下一跳MAC地址三者之间的关联关系;或者,FIB中存储有内容名字、接收该内容名字对应的内容中心网络内容包的端口号、接收到的该接收该内容名字对应的内容中心网络内容包中的源MAC地址三者之间的关联关系。
应理解,以上各个单元的划分仅仅是一种逻辑功能的划分,实际实现时可以全部或部分集成到一个物理实体上,也可以物理上分开。本申请实施例中,接收单元401和发送单元403可以由收发器302实现,处理单元402可以由处理器301实现。如图3所示,双栈交换机300可以包括处理器301、收发器302和存储器303。其中,存储器303可以用于存储处理器301执行方案时的代码,该代码可为双栈交换机300出厂时预装的程序/代码。
在上述实施例中,可以全部或部分地通过软件、硬件、固件或者其任意组合来实现、当使用软件程序实现时,可以全部或部分地以计算机程序产品的形式实现。计算机程序产品包括一个或多个指令。在计算机上加载和执行计算机程序指令时,全部或部分地产生按照本申请实施例的流程或功能。计算机可以是通用计算机、专用计算机、计算机网络、或者其他可编程装置。指令可以存储在计算机存储介质中,或者从一个计算机存储介质向另一个计算机存储介质传输,例如,指令可以从一个网站站点、计算机、服务器或数据中心通过有线(例如同轴电缆、光纤、数字用户线(DSL))或无线(例如红外、无线、微波等)方式向另一个网站站点、计算机、服务器或数据中心进行传输。计算机存储介质可以是计算机能够存取的任何可用介质或者是包含一个或多个可用介质集成的服务器、数据中心等数据存储设备。可用介质可以是磁性介质,(例如,软盘、硬盘、磁带、磁光盘(MO)等)、光介质(例如,CD、DVD、BD、HVD等)、或者半导体介质(例如ROM、EPROM、EEPROM、非易失性存储器(NAND FLASH)、固态硬盘(Solid State Disk,SSD))等。
本领域内的技术人员应明白,本申请实施例可提供为方法、***、或计算机程序产品。因此,本申请实施例可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本申请实施例可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本申请实施例是参照根据本申请实施例的方法、设备(***)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
显然,本领域的技术人员可以对本申请实施例进行各种改动和变型而不脱离本申请的精神和范围。这样,倘若本申请实施例的这些赋值和变型属于本申请权利要求及其等同技术的范围之内,则本申请也意图包含这些改动和变型在内。
Claims (30)
1.一种以太网和内容中心网络混合部署下的数据包传输方法,其特征在于,包括:
双栈交换机接收请求包;
所述双栈交换机若确定所述请求包满足预设条件;其中,所述预设条件包括所述请求包为第一内容中心网络请求包,所述第一内容中心网络请求包中包括源媒体访问控制MAC地址域和目的MAC地址域;则执行:
若所述第一内容中心网络请求包中不包括非生成树协议N-STP链路指示信息,所述N-STP链路指示信息用于指示传输过所述第一内容中心网络请求包的所有传输链路中的至少一个传输链路为N-STP链路;则:
所述双栈交换机向至少一个第一邻双栈交换机发送第二内容中心网络请求包;
其中,所述第一邻双栈交换机与所述双栈交换机之间的链路为N-STP链路;所述第二内容中心网络请求包是向所述第一内容中心网络请求包中添加所述N-STP链路指示信息后得到的。
2.如权利要求1所述的方法,其特征在于,所述双栈交换机向至少一个所述第一邻双栈交换机发送第二内容中心网络请求包,包括:
所述双栈交换机将所述第二内容中心网络请求包中的源MAC地址域赋值为所述双栈交换机的MAC地址;
所述双栈交换机向至少一个所述第一邻双栈交换机发送赋值MAC地址的所述第二内容中心网络请求包。
3.如权利要求1或2所述的方法,其特征在于,所述双栈交换机若确定所述第一内容中心网络请求包满足预设条件,且所述第一内容中心网络请求包中不包括N-STP链路指示信息之后,还包括:
所述双栈交换机向生成树协议STP链路中包括的邻交换机发送所述第一内容中心网络请求包。
4.如权利要求3所述的方法,其特征在于,所述双栈交换机向STP链路中包括的邻交换机发送所述第一内容中心网络请求包,包括:
所述双栈交换机将所述第一内容中心网络请求包中的源MAC地址域赋值为所述双栈交换机的MAC地址;
所述双栈交换机向所述STP链路中包括的邻交换机发送赋值MAC地址的所述第一内容中心网络请求包。
5.如权利要求1或2所述的方法,其特征在于,所述双栈交换机若确定所述请求包满足预设条件之后,还包括:
若所述第一内容中心网络请求包中包括N-STP链路指示信息;则:
所述双栈交换机向至少一个所述第一邻双栈交换机和/或至少一个第二邻双栈交换机发送所述第一内容中心网络请求包;
其中,所述第二邻双栈交换机与所述双栈交换机之间的链路为STP链路。
6.如权利要求5所述的方法,其特征在于,所述双栈交换机向至少一个所述第一邻双栈交换机和/或至少一个第二邻双栈交换机发送所述第一内容中心网络请求包,包括:
所述双栈交换机将所述第一内容中心网络请求包中的源MAC地址域赋值为所述双栈交换机的MAC地址;
所述双栈交换机向至少一个所述第一邻双栈交换机和/或至少一个第二邻双栈交换机发送赋值MAC地址的所述第一内容中心网络请求包。
7.如权利要求1或2所述的方法,其特征在于,所述预设条件还包括:
所述双栈交换机在内容存储器CS中未查询到所述第一内容中心网络请求包的内容名字关联的内容中心网络内容包内容;
其中,所述CS中存储有内容名字与内容中心网络内容包内容的关联关系;其中,一个内容名字对应的内容中心网络请求包用于获取该内容名字关联的内容中心网络内容包内容。
8.如权利要求7所述的方法,其特征在于,所述双栈交换机接收第一内容中心网络请求包之后,还包括:
所述双栈交换机若在所述CS中查询到所述第一内容中心网络请求包的内容名字关联的内容中心网络内容包内容,则:
所述双栈交换机将所述内容中心网络内容包内容封装为第一内容中心网络内容包的数据域,并将所述第一内容中心网络内容包的目标MAC地址域赋值为所述第一内容中心网络请求包的源MAC;将所述第一内容中心网络内容包中的源MAC地址域赋值为所述双栈交换机的MAC地址;
所述双栈交换机发送赋值MAC地址后的所述第一内容中心网络内容包。
9.如权利要求7所述的方法,其特征在于,所述预设条件还包括:所述双栈交换机在兴趣请求表PIT中未查询到所述第一内容中心网络请求包的内容名字关联的:端口号和MAC地址;
其中,所述PIT中存储有内容名字、接收该内容名字对应的内容中心网络请求包的端口号、接收到的该内容名字对应的内容中心网络请求包中的源MAC地址三者之间的关联关系。
10.如权利要求7所述的方法,其特征在于,所述预设条件还包括:
所述双栈交换机在转发信息库FIB中未查询到所述第一内容中心网络请求包的内容名字关联的:端口号和MAC地址;
其中,所述FIB中存储有内容名字、发送该内容名字对应的内容中心网络请求包的端口号、发送该内容名字对应的内容中心网络请求包的下一跳MAC地址三者之间的关联关系;或者,所述FIB中存储有内容名字、接收该内容名字对应的内容中心网络内容包的端口号、接收到的该接收该内容名字对应的内容中心网络内容包中的源MAC地址三者之间的关联关系。
11.如权利要求10所述的方法,其特征在于,所述双栈交换机接收第一内容中心网络请求包之后,还包括:
若所述双栈交换机在所述FIB中查询到所述第一内容中心网络请求包的内容名字关联的:端口号和MAC地址,则:
所述双栈交换机将所述第一内容中心网络请求包中的目标MAC地址域赋值为在所述FIB中查询到的所述第一内容中心网络请求包的内容名字对应的MAC地址;将所述第一内容中心网络请求包中的源MAC地址域赋值为所述双栈交换机的MAC地址;
所述双栈交换机发送赋值MAC地址后的所述第一内容中心网络请求包。
12.如权利要求1或2所述的方法,其特征在于,所述预设条件还包括:
在接收到所述第一内容中心网络请求包之前未收到请求包标识与所述第一内容中心网络请求包的请求包标识相同的内容中心网络请求包;
其中,一个内容中心网络请求包对应一个请求包标识。
13.如权利要求1或2所述的方法,其特征在于,所述方法还包括:
所述双栈交换机接收第二内容中心网络内容包;其中,所述第二内容中心网络内容包中包括源MAC地址域和目的MAC地址域;
所述双栈交换机若在PIT中查询出所述第二内容中心网络内容包的内容名字关联的N个端口号和N个MAC地址,其中,N个端口号N个MAC地址一一对应;N为大于等于1的整数,则:
针对所述N个端口号中的每个端口号,所述双栈交换机对所述第二内容中心网络内容包中的目标MAC地址域赋值为该端口号关联的MAC地址,对源MAC地址域赋值为所述双栈交换机的MAC地址,将赋值MAC地址后的所述第二内容中心网络内容包从该端口发送出去;
其中,所述第二内容中心网络内容包的内容名字与所述第二内容中心网络内容包对应的内容中心网络请求包的内容名字相同;
所述PIT中存储有内容名字、接收该内容名字对应的内容中心网络请求包的端口号、接收到的该内容名字对应的内容中心网络请求包中的源MAC地址三者之间的关联关系。
14.如权利要求13所述的方法,其特征在于,所述双栈交换机接收所述第二内容中心网络内容包之后,还包括:
所述双栈交换机若在FIB中未查询到所述第二内容中心网络内容包的内容名字关联的:端口号和MAC地址,则:
所述双栈交换机将所述第二内容中心网络内容包的内容名字、接收所述第二内容中心网络内容包的的端口号、接收所述第二内容中心网络内容包的端口号的MAC地址三者之间的关联关系存入所述FIB中;
其中,所述FIB中存储有内容名字、发送该内容名字对应的内容中心网络请求包的端口号、发送该内容名字对应的内容中心网络请求包的下一跳MAC地址三者之间的关联关系;或者,所述FIB中存储有内容名字、接收该内容名字对应的内容中心网络内容包的端口号、接收到的该接收该内容名字对应的内容中心网络内容包中的源MAC地址三者之间的关联关系。
15.一种以太网和内容中心网络混合部署中的双栈交换机,其特征在于,包括:
接收单元,用于接收请求包;
处理单元,用于若确定所述请求包满足预设条件,确定第一内容中心网络请求包中不包括非生成树协议N-STP链路指示信息;
发送单元,用于向至少一个第一邻双栈交换机发送第二内容中心网络请求包;
其中,所述预设条件包括所述请求包为第一内容中心网络请求包,所述第一内容中心网络请求包中包括源媒体访问控制MAC地址域和目的MAC地址域;所述N-STP链路指示信息用于指示传输过所述第一内容中心网络请求包的所有传输链路中的至少一个传输链路为N-STP链路;所述第一邻双栈交换机与所述双栈交换机之间的链路为N-STP链路;所述第二内容中心网络请求包是向所述第一内容中心网络请求包中添加所述N-STP链路指示信息后得到的。
16.如权利要求15所述的双栈交换机,其特征在于,所述发送单元,具体用于:
通过所述处理单元将所述第二内容中心网络请求包中的源MAC地址域赋值为所述双栈交换机的MAC地址;
向至少一个所述第一邻双栈交换机发送赋值MAC地址的所述第二内容中心网络请求包。
17.如权利要求15或16所述的双栈交换机,其特征在于,所述发送单元,还用于:
若通过所述处理单元确定所述第一内容中心网络请求包满足预设条件,且所述第一内容中心网络请求包中不包括N-STP链路指示信息,则:
向生成树协议STP链路中包括的邻交换机发送所述第一内容中心网络请求包。
18.如权利要求17所述的双栈交换机,其特征在于,所述处理单元,还用于:
将所述第一内容中心网络请求包中的源MAC地址域赋值为所述双栈交换机的MAC地址;
所述发送单元,具体用于:
向所述STP链路中包括的邻交换机发送赋值MAC地址的所述第一内容中心网络请求包。
19.如权利要求15或16所述的双栈交换机,其特征在于,所述发送单元,还用于:
若通过所述处理单元确定所述请求包满足预设条件,且所述第一内容中心网络请求包中包括N-STP链路指示信息;则:
向至少一个所述第一邻双栈交换机和/或至少一个第二邻双栈交换机发送所述第一内容中心网络请求包;
其中,所述第二邻双栈交换机与所述双栈交换机之间的链路为STP链路。
20.如权利要求19所述的双栈交换机,其特征在于,所述处理单元,还用于:
将所述第一内容中心网络请求包中的源MAC地址域赋值为所述双栈交换机的MAC地址;
所述发送单元,具体用于:
向至少一个所述第一邻双栈交换机和/或至少一个第二邻双栈交换机发送赋值MAC地址的所述第一内容中心网络请求包。
21.如权利要求15或16所述的双栈交换机,其特征在于,所述预设条件还包括:
通过所述处理单元在内容存储器CS中未查询到所述第一内容中心网络请求包的内容名字关联的内容中心网络内容包内容;
其中,所述CS中存储有内容名字与内容中心网络内容包内容的关联关系;其中,一个内容名字对应的内容中心网络请求包用于获取该内容名字关联的内容中心网络内容包内容。
22.如权利要求21所述的双栈交换机,其特征在于,所述处理单元,还用于:
在通过所述接收单元接收第一内容中心网络请求包之后,若在所述CS中查询到所述第一内容中心网络请求包的内容名字关联的内容中心网络内容包内容,则:将所述内容中心网络内容包内容封装为第一内容中心网络内容包的数据域,并将所述第一内容中心网络内容包的目标MAC地址域赋值为所述第一内容中心网络请求包的源MAC;将所述第一内容中心网络内容包中的源MAC地址域赋值为所述双栈交换机的MAC地址;
所述发送单元,还用于:
发送赋值MAC地址后的所述第一内容中心网络内容包。
23.如权利要求21所述的双栈交换机,其特征在于,所述预设条件还包括:通过所述处理单元在兴趣请求表PIT中未查询到所述第一内容中心网络请求包的内容名字关联的:端口号和MAC地址;
其中,所述PIT中存储有内容名字、接收该内容名字对应的内容中心网络请求包的端口号、接收到的该内容名字对应的内容中心网络请求包中的源MAC地址三者之间的关联关系。
24.如权利要求21所述的双栈交换机,其特征在于,所述预设条件还包括:
通过所述处理单元在转发信息库FIB中未查询到所述第一内容中心网络请求包的内容名字关联的:端口号和MAC地址;
其中,所述FIB中存储有内容名字、发送该内容名字对应的内容中心网络请求包的端口号、发送该内容名字对应的内容中心网络请求包的下一跳MAC地址三者之间的关联关系;或者,所述FIB中存储有内容名字、接收该内容名字对应的内容中心网络内容包的端口号、接收到的该接收该内容名字对应的内容中心网络内容包中的源MAC地址三者之间的关联关系。
25.如权利要求24所述的双栈交换机,其特征在于,所述处理单元,还用于:
在通过所述接收单元接收第一内容中心网络请求包之后,若确定在所述FIB中查询到所述第一内容中心网络请求包的内容名字关联的:端口号和MAC地址,则:将所述第一内容中心网络请求包中的目标MAC地址域赋值为在所述FIB中查询到的所述第一内容中心网络请求包的内容名字对应的MAC地址;将所述第一内容中心网络请求包中的源MAC地址域赋值为所述双栈交换机的MAC地址;
所述发送单元,还用于:
发送赋值MAC地址后的所述第一内容中心网络请求包。
26.如权利要求15或16所述的双栈交换机,其特征在于,所述预设条件还包括:
在通过所述接收单元接收到所述第一内容中心网络请求包之前未收到请求包标识与所述第一内容中心网络请求包的请求包标识相同的内容中心网络请求包;
其中,一个内容中心网络请求包对应一个请求包标识。
27.如权利要求15或16所述的双栈交换机,其特征在于,所述接收单元,还用于:
接收第二内容中心网络内容包;其中,所述第二内容中心网络内容包中包括源MAC地址域和目的MAC地址域;
所述处理单元,还用于:
若在PIT中查询出所述第二内容中心网络内容包的内容名字关联的N个端口号和N个MAC地址,其中,N个端口号N个MAC地址一一对应;N为大于等于1的整数,则:
针对所述N个端口号中的每个端口号,对所述第二内容中心网络内容包中的目标MAC地址域赋值为该端口号关联的MAC地址,对源MAC地址域赋值为所述双栈交换机的MAC地址;
所述发送单元,还用于:
将赋值MAC地址后的所述第二内容中心网络内容包从该端口发送出去;
其中,所述第二内容中心网络内容包的内容名字与所述第二内容中心网络内容包对应的内容中心网络请求包的内容名字相同;所述PIT中存储有内容名字、接收该内容名字对应的内容中心网络请求包的端口号、接收到的该内容名字对应的内容中心网络请求包中的源MAC地址三者之间的关联关系。
28.如权利要求27所述的双栈交换机,其特征在于,所述处理单元,还用于:
在通过所述接收单元接收所述第二内容中心网络内容包之后,若确定在FIB中未查询到所述第二内容中心网络内容包的内容名字关联的:端口号和MAC地址,则:将所述第二内容中心网络内容包的内容名字、接收所述第二内容中心网络内容包的的端口号、接收所述第二内容中心网络内容包的端口号的MAC地址三者之间的关联关系存入所述FIB中;
其中,所述FIB中存储有内容名字、发送该内容名字对应的内容中心网络请求包的端口号、发送该内容名字对应的内容中心网络请求包的下一跳MAC地址三者之间的关联关系;或者,所述FIB中存储有内容名字、接收该内容名字对应的内容中心网络内容包的端口号、接收到的该接收该内容名字对应的内容中心网络内容包中的源MAC地址三者之间的关联关系。
29.一种以太网和内容中心网络混合部署中的双栈交换机,其特征在于,所述双栈交换机包括处理器、收发器和存储器;
所述存储器用于存储指令,所述处理器用于执行所述存储器存储的指令,并控制所述收发器进行信号接收和信号发送,当所述处理器执行所述存储器存储的指令时,所述双栈交换机用于执行如权利要求1至14任一权利要求所述的方法。
30.一种计算机存储介质,其特征在于,所述计算机存储介质存储有计算机可执行指令,所述计算机可执行指令在被计算机调用时,使所述计算机执行如权利要求1至14任一权利要求所述的方法。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710363159.3A CN108881071B (zh) | 2017-05-16 | 2017-05-16 | 以太网内容中心网络混合下数据包传输方法装置存储介质 |
PCT/CN2017/119051 WO2018209962A1 (zh) | 2017-05-16 | 2017-12-27 | 以太网内容中心网络混合下数据包传输方法装置存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710363159.3A CN108881071B (zh) | 2017-05-16 | 2017-05-16 | 以太网内容中心网络混合下数据包传输方法装置存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN108881071A CN108881071A (zh) | 2018-11-23 |
CN108881071B true CN108881071B (zh) | 2020-02-14 |
Family
ID=64273216
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201710363159.3A Active CN108881071B (zh) | 2017-05-16 | 2017-05-16 | 以太网内容中心网络混合下数据包传输方法装置存储介质 |
Country Status (2)
Country | Link |
---|---|
CN (1) | CN108881071B (zh) |
WO (1) | WO2018209962A1 (zh) |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102821050A (zh) * | 2012-08-15 | 2012-12-12 | 南京南瑞继保电气有限公司 | 一种快速生成树协议应用于单环网拓扑的处理方法 |
WO2014089986A1 (zh) * | 2012-12-12 | 2014-06-19 | 华为技术有限公司 | 路由转发、建立路由表、和获取内容的方法及其装置 |
CN104348728A (zh) * | 2013-08-08 | 2015-02-11 | 华为技术有限公司 | 生成转发信息的方法及设备 |
CN105610829A (zh) * | 2015-12-30 | 2016-05-25 | 天津大学 | 基于内容中心网络的5g网络***架构及数据传输方法 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104410655B (zh) * | 2014-09-26 | 2018-02-09 | 清华大学 | 基于命名机制的分布式网络的存储***及方法 |
-
2017
- 2017-05-16 CN CN201710363159.3A patent/CN108881071B/zh active Active
- 2017-12-27 WO PCT/CN2017/119051 patent/WO2018209962A1/zh active Application Filing
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102821050A (zh) * | 2012-08-15 | 2012-12-12 | 南京南瑞继保电气有限公司 | 一种快速生成树协议应用于单环网拓扑的处理方法 |
WO2014089986A1 (zh) * | 2012-12-12 | 2014-06-19 | 华为技术有限公司 | 路由转发、建立路由表、和获取内容的方法及其装置 |
CN104348728A (zh) * | 2013-08-08 | 2015-02-11 | 华为技术有限公司 | 生成转发信息的方法及设备 |
CN105610829A (zh) * | 2015-12-30 | 2016-05-25 | 天津大学 | 基于内容中心网络的5g网络***架构及数据传输方法 |
Also Published As
Publication number | Publication date |
---|---|
WO2018209962A9 (zh) | 2019-02-21 |
CN108881071A (zh) | 2018-11-23 |
WO2018209962A1 (zh) | 2018-11-22 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
EP3154227B1 (en) | Packet transmission method, node, path management server and storage medium | |
EP3393094A1 (en) | Method and device for allocating service traffic | |
TWI543565B (zh) | 封包重傳的方法、使用此方法的資料伺服器及封包重傳系統 | |
CN111371634B (zh) | 一种通信方法、装置及*** | |
WO2021139289A1 (zh) | 报文发送方法、路由表项的生成方法、装置及存储介质 | |
EP3813318B1 (en) | Packet transmission method, communication device, and system | |
CN113612801B (zh) | Epa网关设备和epa跨网通信的方法 | |
KR20180025944A (ko) | Sdn 기반의 arp 구현 방법 및 장치 | |
WO2020173424A1 (zh) | 报文处理的方法和网关设备 | |
WO2022121707A1 (zh) | 报文传输方法、设备及*** | |
CN101132374B (zh) | 一种发送报文的方法及装置 | |
JP5344382B2 (ja) | ネットワークシステム及びフレーム通信方法 | |
US12003417B2 (en) | Communication method and apparatus | |
US8249101B2 (en) | Mobile ad hoc network configured as a virtual internet protocol network | |
JP2022516355A (ja) | データ送信方法及び機器 | |
JP2024504466A (ja) | パケット転送方法、パケット処理方法、およびデバイス | |
WO2012055168A1 (en) | Forwarding messages in a fibre channel network | |
CN108881071B (zh) | 以太网内容中心网络混合下数据包传输方法装置存储介质 | |
WO2023093513A1 (zh) | 路径感知方法、装置及*** | |
CN116095197A (zh) | 数据传输方法及相关装置 | |
CN111865801B (zh) | 一种基于Virtio端口传输数据的方法和*** | |
WO2015010514A1 (zh) | 一种信号转换方法、装置及*** | |
CN115242699A (zh) | 报文传输方法、切片生成方法、装置及*** | |
CN113497767A (zh) | 传输数据的方法、装置、计算设备及存储介质 | |
WO2023078144A1 (zh) | 报文处理方法、装置及*** |
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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant |