CN117714370A - 动态分离的信道加密密钥分配 - Google Patents
动态分离的信道加密密钥分配 Download PDFInfo
- Publication number
- CN117714370A CN117714370A CN202410037943.5A CN202410037943A CN117714370A CN 117714370 A CN117714370 A CN 117714370A CN 202410037943 A CN202410037943 A CN 202410037943A CN 117714370 A CN117714370 A CN 117714370A
- Authority
- CN
- China
- Prior art keywords
- network
- network device
- data plane
- security association
- control plane
- 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
Links
- 238000000034 method Methods 0.000 claims abstract description 62
- 238000004891 communication Methods 0.000 claims description 57
- 238000003860 storage Methods 0.000 claims description 21
- 230000005540 biological transmission Effects 0.000 abstract description 30
- 238000007726 management method Methods 0.000 description 49
- 238000012545 processing Methods 0.000 description 47
- 230000006870 function Effects 0.000 description 16
- 238000004519 manufacturing process Methods 0.000 description 6
- 230000008569 process Effects 0.000 description 6
- 238000007792 addition Methods 0.000 description 5
- 238000012986 modification Methods 0.000 description 5
- 230000004048 modification Effects 0.000 description 5
- 238000013519 translation Methods 0.000 description 5
- 238000013500 data storage Methods 0.000 description 4
- 230000009471 action Effects 0.000 description 3
- 230000008901 benefit Effects 0.000 description 3
- 230000001413 cellular effect Effects 0.000 description 3
- 238000004590 computer program Methods 0.000 description 3
- 238000010586 diagram Methods 0.000 description 3
- 238000012546 transfer Methods 0.000 description 3
- 230000000694 effects Effects 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 2
- 239000003550 marker Substances 0.000 description 2
- 230000003287 optical effect Effects 0.000 description 2
- 230000000644 propagated effect Effects 0.000 description 2
- 241000131458 Elsholtzia Species 0.000 description 1
- 235000008694 Humulus lupulus Nutrition 0.000 description 1
- 230000004075 alteration Effects 0.000 description 1
- 238000013459 approach Methods 0.000 description 1
- 230000002457 bidirectional effect Effects 0.000 description 1
- 230000010267 cellular communication Effects 0.000 description 1
- 238000010276 construction Methods 0.000 description 1
- 238000007796 conventional method Methods 0.000 description 1
- 230000007812 deficiency Effects 0.000 description 1
- 230000003111 delayed effect Effects 0.000 description 1
- 230000001419 dependent effect Effects 0.000 description 1
- 238000001514 detection method Methods 0.000 description 1
- 238000009826 distribution Methods 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
- 230000007774 longterm Effects 0.000 description 1
- 230000007246 mechanism Effects 0.000 description 1
- 230000000116 mitigating effect Effects 0.000 description 1
- 239000003607 modifier Substances 0.000 description 1
- 238000012544 monitoring process Methods 0.000 description 1
- 230000006855 networking Effects 0.000 description 1
- 238000011330 nucleic acid test Methods 0.000 description 1
- 230000008520 organization Effects 0.000 description 1
- 230000035755 proliferation Effects 0.000 description 1
- 230000002040 relaxant effect Effects 0.000 description 1
- 230000011664 signaling Effects 0.000 description 1
- 239000007787 solid Substances 0.000 description 1
- 230000003068 static effect Effects 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
- 238000011144 upstream manufacturing Methods 0.000 description 1
- 230000000007 visual effect Effects 0.000 description 1
Classifications
-
- 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/42—Centralised routing
-
- 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/38—Flow based routing
-
- 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/64—Routing or path finding of packets in data switching networks using an overlay routing layer
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L61/00—Network arrangements, protocols or services for addressing or naming
- H04L61/09—Mapping addresses
- H04L61/25—Mapping addresses of the same type
- H04L61/2503—Translation of Internet protocol [IP] addresses
- H04L61/2514—Translation of Internet protocol [IP] addresses between local and global IP addresses
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/04—Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks
- H04L63/0428—Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks wherein the data content is protected, e.g. by encrypting or encapsulating the payload
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/06—Network architectures or network communication protocols for network security for supporting key management in a packet data network
- H04L63/062—Network architectures or network communication protocols for network security for supporting key management in a packet data network for key distribution, e.g. centrally by trusted party
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/08—Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
- H04L9/0816—Key establishment, i.e. cryptographic processes or cryptographic protocols whereby a shared secret becomes available to two or more parties, for subsequent use
- H04L9/0819—Key transport or distribution, i.e. key establishment techniques where one party creates or otherwise obtains a secret value, and securely transfers it to the other(s)
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/32—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/32—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
- H04L9/3215—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials using a plurality of channels
Landscapes
- Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Computer Hardware Design (AREA)
- Computing Systems (AREA)
- General Engineering & Computer Science (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
一种方法可以包括由第一网络设备确定要在软件定义网络(SDN)中的传输中打开的控制信道的类型。该方法还可以包括经由与数据平面分离的控制平面建立与控制设备的控制信道。该方法可以进一步包括经由控制信道向控制设备通告第一安全关联参数。该方法可以包括经由控制信道从控制设备接收与第二网络设备相关联的第二安全关联参数。该方法还可以包括使用第二安全关联参数建立与第二网络设备的数据平面连接。
Description
本申请是申请日为2018年7月25日、申请号为201880049784.3(PCT国际申请号为PCT/US2018/043622)、名称为“动态分离的信道加密密钥分配”的发明专利申请的分案申请。
相关申请的交叉引用
本申请要求于2017年7月21日递交的美国专利申请第62/539,431号的优先权,其全部内容通过引用合并于此。
技术领域
本公开中讨论的实施例涉及动态分离的信道加密密钥分配。
背景技术
网络的使用是允许不同的计算设备之间进行通信的有用工具。尽管计算机和计算机进行通信的网络激增,但是对于当前的网络技术仍然存在各种限制。
本公开中要求保护的主题不限于解决任何缺点或仅在诸如上述环境中操作的实施例。相反,提供该背景技术仅是为了说明一个示例技术领域,在该技术领域中可以实践本公开中描述的一些实施例。
发明内容
在独立权利要求中陈述了本发明的方面,在从属权利要求中陈述了优选特征。一方面的特征可以单独地或与其他方面结合地应用于每个方面。
本公开的一个或多个实施例可以包括一种方法,该方法可以包括:由第一网络设备确定要在软件定义网络(SDN)中的传输上打开的控制信道的类型。该方法还可以包括经由与数据平面分离的控制平面利用控制设备建立控制信道。该方法可以进一步包括经由控制信道向控制设备通告第一安全关联参数。该方法可以包括经由控制信道从控制设备接收与第二网络设备相关联的第二安全关联参数。该方法还可以包括使用第二安全关联参数建立与第二网络设备的数据平面连接。
本公开的一个或多个实施例可以另外包括用于促进这种方法的执行的系统和/或非暂时性计算机可读介质。
实施例的目的和优点将至少通过权利要求中特别指出的元件、特征和组合来实现和完成。
应当理解,前面的一般描述和下面的详细描述都仅是示例和解释性的,并且不限制本发明,如所要求保护的。
附图说明
将通过使用附图,以附加的特性和细节来描述和说明示例实施例,其中:
图1示出了实现软件定义网络(SDN)的网络组件的示例系统;
图2示出了实现SDN的另一示例系统;
图3示出了控制平面实现的示例系统;
图4示出了数据平面实现的另一示例系统;
图5示出了在SDN内建立控制平面和数据平面的示例方法的流程图;
图6示出了在SDN内建立控制平面和数据平面的另一示例方法的流程图;
图7示出了在SDN内建立控制平面和数据平面的另一示例方法的流程图;以及
图8示出了示例计算系统。
具体实施方式
加密是跨现代通信网络进行的大多数数据交换的基础功能。认证端点、建立安全控制和数据路径以及交换加密密钥都涉及很大的挑战。建立安全通信信道的众多挑战之一是提供在端点之间交换验证信息和加密密钥的能力,而该交换不会受到所谓的中间人攻击。中间人攻击涉及第三方窃听和可能修改交换的信息,使得第三方可以拦截交换的信息。用于缓解中间人攻击的一些常规技术包括迪菲赫尔曼(Diffie-Hellman)和椭圆曲线数字签名算法(ECDSA)。
本公开的方面解决了减轻常规网络中的各种安全缺陷的常规方法的这些和其他缺点。例如,本公开解决了必须通过使用用于验证和加密密钥交换的相对安全和分离的信道来提供跨不安全介质的安全通信的挑战。从数据和控制协议处理的角度来看,分离的信道提供与不安全信道相同的功能,并具有以下优点:给定网络的实现者可以决定使用提供一定信任级别的通信信道,从而降低了中间人攻击的可能性。由于大多数任何专用通信网络(例如MPLS,专线TDM或专用Frame ATM网络)通常都可以提供比开放Internet更好的安全性和完整性,因此,本公开通过使用专用网络作为Internet的分离信道可以显着提高加密和验证信息的任何交换的安全性。由于几乎没有任何网络可以被认为是绝对安全的,因此仍然可以使用一组给定的验证和安全交换功能,而无需放宽任何要求。
本公开提供了一种协议,该协议具有识别其携带信息的特定路径的能力,该信息关于,特别是给定协议广告的始发者的本地通信路径信息和相关消息。本公开还可以提供一种带外机制,以收集关于要通过与上述那些通信路径分离的信道来通告的本地通信路径的信息。本公开可以进一步提供一种协议,该协议携带跨该协议不是专门可操作的路径(即,分离的路径)建立加密的通信信道所需的所有信息。本公开还可以提供上述协议内的能力,以唯一地标识每个通告的本地路径以及与每个本地路径相关联的共享或唯一加密参数。本公开还可以为本地加密端点提供跨可能经过或可能不经过网络地址转换(NAT,IETFRFC2663)的路径建立加密通信的能力,同时管理与控制信道路径分离的那些路径。本公开的另一好处可以包括使用与在分离的信道或路径上运行的协议不同的控制协议,以便发现其他本地路径的潜在网络地址转换条件。
在至少一些实施例中,系统可以包括使用专用网络和公共因特网来互连站点的网络,其中专用网络和/或因特网可以以主要或备用容量使用,作为适合于站点间连接或使用不同通信路径配置文件的特定应用。跨两个网络的通信可以被保护并且可以被加密。对于两个网络,示例部署可以以相同(或接近相同)的方式使用控制平面协议和数据平面协议,其中,可以在每个单独的网络上交换特定于两个网络的参数。
本公开的实施例可以提供对计算机网络和计算机本身的操作的改进。例如,使用本公开的一个或多个实施例,网络流量可以更安全并且不易受到嗅探和中间人攻击。参考附图说明本公开的实施例。
图1示出了根据本公开的一个或多个实施例的实现软件定义网络(SDN)的网络组件的示例系统100。SDN可以包括任何类型的网络或网络拓扑。例如,SDN可以包括软件定义的广域网(SD-WAN)、软件定义的局域网(LAN)、软件定义的城域网(MAN)或任何其他类型的网络。系统100可以包括内部网络域105和一个或多个外部网络域。系统100可以包括一个或多个边缘网络设备110(例如边缘网络设备110a-110d)、控制设备120、通信网络130以及外部网络设备140和141(例如外部网络设备140a-140d和141a-141d)。
为了便于解释和清楚说明,相对于WAN描述了本公开的一些示例,其中,该网络至少部分地由软件而不是由硬件控制。这样,SDN可以支持多种类型的连接或通信链路,例如因特网、多协议标签交换(MPLS)连接和/或蜂窝连接(例如长期演进(LTE)、LTE高级、微波的全球互操作性访问(WiMAX),演进的高速分组访问(HSPA+)和/或其他)。此外,SDN可以支持各种连接之间的负载平衡或负载共享。此外,由于某些网络的分布式性质,SDN可能支持虚拟专用网络(VPN)、防火墙和其他安全服务。例如,在SD-WAN中,控制平面可以在功能上与物理拓扑分离。在一些实施例中,SDN可以将网络的控制平面(将通过软件来管理)与网络的数据平面(在网络的硬件上操作)分开。如本文所使用的,术语控制平面可以指代在网络本身的控制和管理中使用的通信和连接,而不是指可能在数据平面发生的通过网络的数据传输。如本文所使用的,术语数据平面可以指代在通过网络的数据的发送和接收中使用的通信和连接。例如,控制平面可以包括指向网络内的网络设备的管理业务,而数据平面可以包括通过网络内的网络设备的业务。
在一些实施例中,控制设备120可以被配置为通过指导边缘网络设备110的操作的一个或多个方面来管理内部网络域105的控制平面。例如,控制设备120可以生成和/或将策略分配给一个或多个边缘网络设备110。策略可以包括一个或一组与网络流量(例如路由、优先级、媒体等)的处理有关的规则。内部网络域105可以作为具有特定功能和/或协议的安全和受控域运行。在一些实施例中,边缘网络设备110可以基于由控制设备120创建和/或传播的一个或多个策略来操作。在这些和其他实施例中,边缘网络设备110可以基于由控制设备120创建和/或传播的策略来路由内部网络域105内的数据业务。
在一些实施例中,控制设备120可以与每个边缘网络设备110形成控制平面连接。控制平面连接可以促进边缘网络设备110和控制设备120之间的数据交换,以进行管理和控制内部网络域105。控制平面连接可以通过通信网络130经由隧道进行操作,例如数据报传输层安全性(DTLS)隧道。在一些实施例中,通过控制平面连接传输的数据可以促进确定通信网络130的拓扑的控制设备120。例如,控制设备120可以与边缘网络设备110进行通信以确定哪些物理连接存在于通信网络130中的边缘网络设备110之间和之中。另外地或可替代地,通过控制平面连接传输的数据可以促进控制设备120确定边缘网络设备110之间和之中的通信网络130上的可用、最佳或期望的路径。可替代地,通过控制平面连接发送的数据可以促进边缘网络设备110确定边缘网络设备110之间和之中的通信网络130上的可用、最佳或期望路径。另外或可替代地,控制设备120可以通过控制平面连接将路由信息传送给边缘网络设备110。在这些和其他实施例中,控制平面连接可以包括控制设备120与边缘网络设备110之间的永久连接,使得如果控制设备120与给定边缘网络设备110之间的连接断开,则边缘网络设备110可能无法或以其他方式不允许通过内部网络域105进行通信。
在一些实施例中,控制设备120可以维护在内部网络域105内存储路由信息的中央路由表。例如,控制设备120可以与各种边缘网络设备110通信以确定物理和/或逻辑连接通过通信网络130可用于边缘网络设备110。在一些实施例中,边缘网络设备110可以包括一个或多个彼此的物理和/或逻辑连接。在这些和其他实施例中,控制设备120可以结合中央路由表生成和/或更新一个或多个策略,以帮助边缘网络设备110确定通过内部网络域105的数据业务路由。例如,控制设备120可以向边缘网络设备110提供与业务流有关的策略和其他配置偏好,而不是参与通过内部网络域105的每个单独的流。
在这些和其他实施例中,边缘网络设备110可能尚未存储整个系统100的拓扑和/或路由路径。每个边缘网络设备110可能不需要分别相互查询以确定可达性。相反,控制设备120可以将这样的信息提供给边缘网络。在这些和其他实施例中,边缘网络设备110可以基于从控制设备120接收到的一个或多个其他策略、业务的特征、路由路径的特征、源边缘网络设备110和目的地(例如,边缘网络设备110),通过最直接的路由、最具成本效益的路由、最可靠的路由或通过某些其他路由来路由流量。
在一些实施例中,一个或多个策略可以包括关于确定下一跳和路由路径指令的指导。例如,特定策略可以指示特定边缘网络设备110接下来针对特定类别、类或组的业务流将该业务路由到何处,而不是为该业务提供完整的端到端路由。例如,边缘网络设备110a可以从外部网络设备140a接收指向外部网络设备141c的地址的数据。边缘网络设备110a可能存储了第一策略,网络设备110a可以使用该策略来确定数据的路由路径,包括去往外部网络设备141c地址的网络流量的“下一跳”要被路由到边缘网络设备110d。
在一些实施例中,控制设备120可以生成策略以使内部网络域105内的某些网络业务流通过某些类型的连接或通信链路(例如,LTE、互联网、MPLS)和/或通过某些边缘网络设备110。在一些实施例中,链路分类可以指示通信链路的类型。边缘网络设备110可以在快速路径中(例如,当分组正在通过网络行进时)做出路由决定。边缘网络设备110可以使用策略来确定动作。例如,对于给定的数据集,该策略可以指示可以基于配置偏好并且基于通信链路的类型或分类来选择第一路由路径。边缘网络设备110还可以针对来自特定来源的所有分组、源自特定计算机笔记本电脑的所有分组、流量类型(例如语音)等确定动作(例如,确定路线)。在另一个示例中,策略具有配置首选项,该首选项可指示具有范围为100.1/16的IP地址的所有流可以归类为语音流。当边缘网络设备110连接到三个不同的通信链路(例如,因特网链路、MPLS链路、蜂窝链路)时。配置首选项可以指示语音流量将通过因特网链路进行路由。因此,边缘网络设备110可以在因特网链路上路由具有范围为100.1/16的IP地址的所有流。配置首选项的其他示例可以包括成本(例如,金钱、时间、路线、跳、传输状况(例如损耗、等待时间和/或抖动)、带宽,路径地理位置、来源(例如设备、地理位置、用户)、目的地(例如,设备、地理位置、用户)、应用(例如,业务、社交)、用户组(例如,第一子网IP上的财务、第二子网IP上的HR、第三子网IP上的工程设计等)。任何类型的数据或信息可以用作配置首选项。在示例中,边缘网络设备110可以标识与流量相关联的元数据,例如标头。标头可以在标头中包括DSCP值以指示预定义的路由路径。边缘网络设备110还可以基于特定的应用(有时可能称为层7标头或http标头)做出路由决策。例如,边缘网络设备110可以在第一路径上路由OFFICE365流量,并在第二条路径上确保SALESFORCE流量。
在一些实施例中,控制设备120可以促进边缘网络设备110的验证。控制设备120还可以促进数据平面的配置。在至少一些实施例中,为了建立数据平面,边缘网络设备110可以生成用于边缘网络设备110的一组安全关联参数。安全关联参数可以包括以下信息:其他边缘网络设备可以用来利用边缘网络设备110进行验证和/或连接到边缘网络设备110。例如,安全关联参数可以包括一个或多个密钥、证书等。边缘网络设备110可以将安全关联参数发送给控制设备120。控制设备120可以将安全关联参数发送到被允许连接到边缘网络设备110的其他边缘网络设备。控制设备120的更多细节被用于促进结合图3-7描述的数据平面和控制平面的配置。
在一些实施例中,边缘网络设备110之间的流量以及边缘网络设备110和控制设备120之间的流量可以通过边缘网络设备110之间的一个或多个数据报传输层安全性(DTLS)和/或传输层安全性(TLS)连接诸如使用具有256位长密钥的高级加密标准(AES)的双向认证被加密。
在一些实施例中,控制设备120可以存储用于内部网络域105内的一个或多个(或全部)边缘网络设备110的验证信息。在这些和其他实施例中,可以防止设备在内部网络域105内通信,除非设备具有与控制设备120的所存储的验证信息匹配或对应的验证信息。在一些实施例中,可以在边缘网络设备110首先上线以建立控制平面连接使用该验证信息,并且可以防止没有与控制设备120进行控制平面连接的任何设备在内部网络域105内通信。
边缘网络设备110可以在内部网络域105的边界上操作。边缘网络设备110可以包括可以在内部网络域105中操作的一个或多个物理设备和/或逻辑连接。这样的连接可以说明为通信网络130的一部分。另外或替代地,边缘网络设备110可以包括在内部网络域105外部操作的一个或多个物理和/或逻辑连接。例如,边缘网络设备110可以连接到外部网络设备140和/或141。
在一些实施例中,边缘网络设备110可以操作以将来自关联的外部网络设备140和141的流量路由到内部网络域105中。另外或替代地,边缘网络设备110可以操作以将流量从内部网络域105路由到关联的外部网络设备140和141。在一些实施例中,边缘网络设备110可以使用诸如开放式最短路径优先(OSPF)、边界网关协议(BGP)、虚拟路由器冗余协议(VRRP)、双向转发检测(BFD)等的典型通信协议与关联的外部网络设备140和141通信。附加地或替代地,边缘网络设备110可以支持其他网络功能,例如区分服务代码点(DSCP)标记或服务类型(TOS)标记、服务质量(QoS)监视、服务水平协议(SLA)、互联网协议(IP)转发、因特网t协议安全性(IPsec)、访问控制列表(ACL)等。
例如,利用DSCP或TOS标记,边缘网络设备110可以被配置为将DSCP或TOS标记插入分组报头中。这样的DSCP或TOS标记可以标识多个通信链路中的一个(或者对一个的首选项)通信链路,在该多个通信链路上发送某些类型的网络流量。基于DSCP或TOS标记,边缘网络设备110可以经由一种或多种类型的通信链路来路由网络流量。
作为附加示例,利用IPsec,边缘网络设备110可以使用IPsec验证和/或加密网络流量。例如,给定边缘网络设备110可以验证一个或多个计算设备以与给定边缘网络设备110通信和/或加密在计算设备与给定边缘网络设备110之间通信的一个或多个分组。
作为另一示例,利用ACL,边缘网络设备110可以包括一组规则,这些规则指示可以被允许使用给定端口或特定通信链路的一个或多个地址、主机和/或网络。在这些和其他实施例中,边缘网络设备110可以包括适用于入站业务、出站业务或两者的ACL。
在一些实施例中,边缘网络设备110可以本地维护一个或多个路由表。在一些实施例中,边缘网络设备110可以基于从控制设备120发送的一个或多个策略来调整或修改路由表。例如,一个或多个条目可以被去除、丢弃或以其他方式不被添加到路由表中。边缘网络设备110可以基于一个或多个策略来将一个或多个条目去除、丢弃或以其他方式不添加到路由表中。在一些实施例中,边缘网络设备110可以包括用于基于来自控制设备120和/或基于边缘网络设备110处理的业务的策略来更新、修改和/或生成路由表的逻辑。边缘网络设备110可以基于使用诸如BGP和/或OSPF的一种或多种网络协议获悉的直接接口路由、静态路由和/或动态路由来自动填充一个或多个路由表。在一些实施例中,内部网络域105外部的数据的路由决定可以由特定边缘网络设备110执行,而无需来自控制设备120的特定方向、输入或控制。例如,特定边缘网络设备110可以基于特定边缘网络设备110从控制设备120接收到的一个或多个策略来计算路由决策。
在一些实施例中,一个或多个边缘网络设备110和/或控制设备120可以被实现为在一个或多个物理计算设备上运行的一个或多个虚拟机。附加地或替代地,边缘网络设备110和/或控制设备120可各自包括单独的独立计算设备。
在不脱离本公开的范围的情况下,可以对图1进行修改、增加或省略。例如,虽然被示为包括四个边缘网络设备110和一个控制设备120,但是系统100可以包括任意数量的边缘网络设备110和控制设备120,例如成千或上万的边缘网络设备110以及多于五个的控制设备120。作为另一个示例,如单个通信网络130所示,通信网络130可以包括多种类型的通信连接。
图2示出了根据本公开的一个或多个实施例的实现SDN的网络组件的另一示例系统200。系统200可以包括一个或多个边缘网络设备210(例如边缘网络设备210a-210o)、一个或多个控制设备220(例如控制设备220a,220b和220c)以及一个或多个通信网络230(例如通信网络230a、230b和230c)。边缘网络设备210可以与图1的边缘网络设备110相似或相当,控制设备220可以与图1的控制设备120相似或相当,并且通信网络230可以与图1的通信网络130相似或相当。系统200可以与图1的系统100相似或相当,但是可以扩展为包括其他网络组件和其他外部网络域。
以与相对于图1的系统100所描述的相似或相当的方式,系统200可在边缘网络设备210中和之间包括内部网络域205。系统200另外可以包括多个外部网络域。例如,数据中心240可以代表第一外部网络域,园区250可以代表第二外部网络域,分支260可以代表第三外部网络域,而远程站点270可以代表第四外部网络域。在这些和其他实施例中,每个外部网络域可以包括一个或多个边缘网络设备210,它们充当内部网络域205和给定的外部网络域之间的桥。附加地或替代地,一个或多个外部网络域可以通过从内部网络域205通信地耦合而在功能上操作为可从其他外部网络域访问,就像在单个网络中一样。
在一些实施例中,系统200可以包括一个或多个外部资源280(诸如外部资源280a-280c)。外部资源280可以由与操作内部网络域205相同的实体或组织来操作,或者可以由不同的实体来操作。在这些和其他实施例中,系统200可以包括可以与特定外部资源280相关联的边缘网络设备210。例如,系统200可以包括位于区域协同定位设施中的边缘网络设备210。区域协同定位设施可以包括在给定的物理位置处具有对因特网或其他通信协议的定向或保证访问的位置。在一些实施例中,区域协同定位设施可包括与一个或多个外部资源280的优先连接或改进连接。在一些实施例中,区域协同定位设施可位于物理上邻近一个或多个外部网络域的指定地理位置。例如,数据中心240可以位于纽约,分支260可以位于德克萨斯州的达拉斯,而边缘网络设备210n可以位于德克萨斯州休斯敦的区域协同定位设施中。
外部资源280可以包括可用于系统200消费的任何计算服务。例如,外部资源280可以包括基于云的服务,诸如软件订阅或软件即服务(SaaS)(诸如MicrosoftAmazon 和/或其他)、媒体服务(例如/> 和/或其他)和/或其他。在这些和其他实施例中,外部资源280可以包括第三方网络,以促进利用在各个地理位置的一个或多个接入点来访问外部资源280。例如,SaaS可能包括德克萨斯州奥斯汀市、加利福尼亚帕洛阿尔托、和纽约的访问服务器访问第三方网络。
在一些实施例中,系统200可以在地理上分布。例如,数据中心240可以位于明尼苏达州的圣保罗;校园250可以位于爱荷华州得梅因;华盛顿西雅图、加利福尼亚洛杉矶、美国佐治亚州亚特兰大和佛罗里达的奥兰多可能有分支260;在英国伦敦、德国柏林、和韩国首尔可能有偏远站点270。在这些和其他实施例中,系统200可以使用通信网络230和内部网络域205来促进所有这些分布式物理位置之间的通信作为单个网络。
在一些实施例中,一个或多个外部网络域可以使用一个或多个具有数据中心240中的资源的应用,例如MicrosoftOracle/>和/或其他。例如,在校园250运行的工作站可以运行Microsoft/>应用的操作可以包括从工作站到校园250的外部网络域中的边缘网络设备210e的数据流。数据流通过内部网络域205可以从边缘网络设备210e到达与数据中心240相关联的边缘网络设备210b、210c和/或210d之一。边缘网络设备210b、210c和/或210d之一可以将流量路由到数据中心240的外部网络域中的Microsoft/>服务器。此外,应用的操作可以包括与从Microsoft/>服务器流向工作站的数据流相反的数据流。
在一些实施例中,系统200可以包括可以通过管理网络232与控制设备220通信的网络管理设备290。网络管理设备290可以提供对与内部网络域205相关联的一个或多个设备的管理和控制,包括边缘网络设备210,控制设备220和/或其他。例如,网络管理设备290可以提供图形用户界面(GUI),该图形用户界面向网络管理员提供访问以控制或观察内部网络域205的操作。在一些实施例中,网络管理员可以经由网络管理设备290输入策略,策略可以通过边缘网络设备210传递给控制设备220以便实施。在一些实施例中,网络管理设备290可以为GUI仪表板提供内部网络域205的一个或多个属性的视觉和/或文本描述,例如边缘网络设备210的数量和/或状态和/或运行状况、控制设备220的数量和/或状态、重新启动的数量和/或最后一次、传输运行状况(例如丢失、延迟和/或抖动)、正在运行或未运行的站点的数量、网络资源的应用消耗、应用路由和/或其他。
在一些实施例中,网络管理设备290可以被配置为验证和/或识别批准的边缘网络设备210和/或控制设备220。例如,网络管理设备290可以维护序列号列表、MAC地址或安全关联参数、边缘网络设备210和/或控制设备220的其他唯一标识信息。在这些和其他实施例中,内部网络域205中的通信可能限于边缘网络设备210和/或控制设备220,其具有由网络管理设备290维护的列表上的标识信息。
在一些实施例中,网络管理设备290可以被配置为生成和/或存储一个或多个边缘网络设备210和/或控制设备220的配置。例如,网络管理员可以使用网络管理设备290以配置特定边缘网络设备210,并且可以将该配置存储为可以应用于将来的边缘网络设备的模板。另外地或替代地,可以由第三方提供用于边缘网络设备210的模板,并将其应用于新的边缘网络设备210。在这些和其他实施例中,可以生成、存储控制设备220的模板,并将其应用于新的控制设备220。附加地或替代地,这样的模板可以用于自动配置新部署的边缘网络设备210。例如,新部署的边缘网络设备210可以在线并连接到相应的控制设备220。相应的控制设备220可以与网络管理设备290一起验证边缘网络设备210的序列号,并且可以从网络管理设备290获得用于边缘网络设备210的模板。控制设备220可以将该模板发送到边缘网络设备210以根据模板自动安装以配置边缘网络设备210。
在一些实施例中,网络管理设备290可以被实现为物理设备或虚拟机。在这些和其他实施例中,网络管理设备290可以物理上位于中央位置附近,例如在数据中心240内或校园250内。
在不脱离本公开的范围的情况下,可以对图2进行修改、增加或省略。例如,尽管被示为包括一定数量的边缘网络设备210和外部网络域,但是系统200可以包括任意数量的边缘网络设备210和外部网络域。
图3示出了根据本公开的一个或多个实施例的控制平面305实现的示例系统300。图3示出了控制设备320,其可以包括多个潜在的通信链路,用于通过控制平面305与边缘网络设备310a、310b和310c进行通信。可以在安全和/或专用网络中实现控制平面305。例如,控制设备320可以使用专用传输器365在控制平面305上通信。边缘网络设备310a和310b可以与图1的边缘网络设备110和/或图2的边缘网络设备210a-210o相似或相当。控制设备420可以与图1的控制设备120和/或图2的220相似或相当。可以使用任意数量的控制设备。
控制设备320可以在边缘网络设备310之间支持控制平面305。控制设备320可以在边缘网络设备310之间接收并通告路由和加密信息。边缘网络设备310可以在彼此之间不建立控制平面信道,但可以建立彼此之间的数据平面连接,如结合图4进一步描述。
在至少一些实施例中,系统300可以包括网络管理设备390,其可以通过管理网络232与控制设备220进行通信。网络管理设备290可以经由控制平面315的无源部分提供对一个或多个设备的管理和控制,包括边缘网络设备310、控制设备320和/或其他。设备可以经由控制平面315的无源部分连接到网络管理设备390并与之通信。网络管理设备390可以与图2的网络管理设备290相似或相当。
在至少一些实施例中,网络管理设备390可以负责协助发现每个连接端点(例如,边缘网络设备310、控制设备320和/或其他)的网络地址转换(NAT)遍历信息。网络管理设备390还可以为控制设备320提供位置和会话信息,并且可以与边缘网络设备310和/或其他控制设备(在图3中未示出)共享会话信息。在至少一些实施例中,系统300可以包括公共网络370。可以不经由公共网络370来建立数据平面。在这些实施例中,第一网络管理设备390a可以协调针对私有网络365的活动,而第二网络管理设备390b可以协调第二公共网络370的活动。例如,当公共网络370包括因特网时,第二网络管理设备390b可以协助进行因特网特定的NAT遍历。
在至少一些实施例中,边缘网络设备310可以经由控制平面305从控制设备310接收与其他边缘网络设备310相关联的一个或多个密钥。例如,在从一个边缘网络设备310向另一边缘网络设备310传输数据时,为了安全起见,一个或多个数据分组可以使用一个或多个密钥。在这些和其他实施例中,控制设备320可基于中央路由表和/或由控制设备320实施的策略将接收到的密钥反映到一个或多个其他边缘网络设备310。在这些和其他实施例中,给定的边缘网络设备310可以生成对称密钥以促进数据平面(例如,图4的数据平面405)的建立,以在边缘网络设备之间进行安全通信。在这些和其他实施例中,一对对称密钥可以由给定的边缘网络设备310生成,一个对称密钥保留在给定的边缘网络设备310中,另一个对称密钥提供给控制设备320,使得控制设备320可以通过控制平面305(而非数据平面)将另一对称密钥分发到与给定边缘网络设备310通信的其他边缘网络设备。以这种方式,基于控制设备320的策略与给定边缘网络设备310通信的每个边缘网络设备可以在数据平面外部接收对称密钥。
在不脱离本公开的范围的情况下,可以对图3进行修改、增加或省略。例如,虽然示出为包括一定数量的边缘网络设备310,但是系统300可以包括任意数量的边缘网络设备310。作为另一示例,虽然示出为包括一个控制设备320,但是可以使用任意数量的控制设备。作为另一示例,尽管示出为包括两个网络管理设备,但是可以使用任何数量的网络管理设备。作为另一示例,尽管被示为包括一个私有网络365和一个公共网络370,但是可以使用任何数量的私有网络和公共网络。
图4示出了根据本公开的一个或多个实施例的数据平面405实现的另一示例系统400。系统400可以包括图3的控制平面305、边缘网络设备310、控制设备320和网络管理设备390。
控制平面305可以在专用网络365中实现,并且可以使用活动信令。数据平面405可以是独立的,并且与控制平面分离,并且可以在公共网络370中实现。控制平面305可以提供相对于数据平面405的分离路径功能。例如,系统300包括私有网络365和公共网络370,尽管两个网络可以是相同类型,例如都为私有或都为公共。
对于使用专用网络365的路径,每个边缘网络设备310都可以对网络管理设备390(如果网络管理设备是系统400的一部分)进行验证,然后对控制设备320进行验证。由边缘网络设备310向控制设备320通告加密密钥。然后,控制设备可以向除目标之外的所有其他边缘网络设备310的每个边缘网络设备310通告端点信息(例如,安全关联参数),包括加密密钥。边缘网络设备310可以基于从控制设备320接收到的信息,主动建立数据平面405,包括沿着数据平面405建立加密,所有其他端点都附接到专用网络365。
对于使用公共网络370的路径,每个边缘网络设备310都可以对网络管理设备390进行验证,网络管理设备390可以为边缘网络设备310提供潜在的NAT遍历信息。边缘网络设备310可以将因特网路径的加密密钥通告给控制设备320。控制设备320可以将包含加密密钥的此附加端点信息通告给除目标边缘设备310之外的所有其他端点的每个端点。每个边缘网络设备310现在在公共(例如,因特网)路径上建立加密的数据平面405,而无需在同一路径上发送与加密有关的信息。
在不脱离本公开的范围的情况下,可以对图4进行修改、增加或省略。例如,虽然示出为包括一定数量的边缘网络设备310,但是系统400可以包括任意数量的边缘网络设备310。作为另一示例,尽管示出为包括一个控制设备320,但是可以使用任意数量的控制设备。作为另一示例,尽管被示为包括两个网络管理设备390,但是可以使用任何数量的网络管理设备。作为另一示例,尽管被示为包括一个私有网络365和一个公共网络370,但是可以使用任何数量的私有网络和公共网络。
图5示出了根据本公开的一个或多个实施例的在SDN内建立控制平面和数据平面的示例方法500的流程图。该方法可以由处理逻辑执行,该处理逻辑可以包括硬件(电路、专用逻辑等)、软件(例如在通用计算机系统或专用机器上运行的软件)或两者的组合,该处理逻辑可以包括在任何网络设备(例如,图1-4的边缘网络设备110、210或310),或另一计算机系统或设备中。然而,可以使用另一系统或系统的组合来执行这些方法。为了简化说明,将本文描述的方法描绘和描述为一系列动作。然而,根据本公开的动作可以以各种顺序和/或同时发生,并且本文未呈现和描述的其他动作。此外,并非所有示出的动作都可以用于实施根据所公开的主题的方法。另外,本领域技术人员将理解并认识到,所述方法可替代地经由状态图或事件被表示为一系列相互关联的状态。另外,在本说明书中公开的方法能够被存储在诸如非暂时性计算机可读介质之类的制品上,以便于将这样的方法传输和转移到计算设备。本文所使用的术语“制品”旨在涵盖可从任何计算机可读设备或存储介质访问的计算机程序。尽管被示为离散的块,但是根据期望的实现,各种块可以被划分为附加的块,被组合为更少的块或被消除。
方法500可以在框505开始,其中处理逻辑可以确定要在软件定义网络(SDN)中跨传输打开的控制信道的类型。处理逻辑可以通过识别通信地耦合到处理逻辑和/或相应的边缘网络设备的一个或多个传输来本地发现控制信道的类型。传输类型可能会影响控制信道的类型。处理逻辑还可以确定在每个传输中打开多少个控制信道。在至少一些实施例中,处理逻辑可以跨每个传输建立一个控制信道。在至少一些实施例中,处理逻辑可以跨一个或多个传输建立多个控制信道。在至少一些实施例中,处理逻辑可以基于传输类型建立特定数量的控制信道。例如,与其他传输类型相比,具有更高安全性和/或带宽的传输类型可以具有更多的控制信道。
在框510处,处理逻辑可以经由与数据平面分离的控制平面与控制设备建立控制信道。在至少一些实施例中,处理逻辑可以如框505所确定的那样建立控制信道的类型和数量。控制信道可以包括安全控制信道。处理逻辑还可与一个或多个网络管理设备(例如分别图2和图3的网络管理设备290或390)建立一个或多个控制信道。在示例中,系统可以包括MPLS传输和因特网传输。处理逻辑可以在MPLS传输上建立至少一个控制信道,并且在因特网传输上建立至少一个控制信道。
在框515处,处理逻辑可以确定针对朝向控制设备和/或朝向网络管理设备的上游路径的潜在网络地址转换(NAT)。在至少一些实施例中,处理逻辑可以确定公共网络的NAT。处理逻辑可以跟踪到控制设备和/或网络管理设备的一条或多条路径,同时注意沿该路径可能发生的任何NAT。处理设备可以将NAT存储在数据存储中。
在框520处,处理逻辑可以经由控制信道将第一安全关联参数通告给控制设备。在至少一些实施例中,处理逻辑可以生成第一安全关联参数。第一安全关联参数可以与第一边缘网络设备关联。处理逻辑可以使用验证协议对控制设备进行验证。在至少一些实施例中,处理逻辑可以在对控制设备进行验证之前对网络管理设备进行验证。第一安全关联参数可以包括密钥、密钥对、一组密钥、证书、令牌或其他设备可以用来识别、验证并通过控制信道以外的信道连接到第一边缘网络设备的任何其他对象。控制设备可以接收第一安全关联参数,并且可以从其他设备接收其他安全关联参数。控制设备可以将一些、任何或所有接收到的安全关联参数发送到允许的设备,如结合图6进一步描述的。
在框525处,处理逻辑可以经由控制信道从控制设备接收与第二网络设备相关联的第二安全关联参数。在框530,处理逻辑可以使用第二安全关联参数与第二网络设备建立数据平面连接。
本领域的技术人员将意识到,对于这些处理、操作和方法,所执行的功能和/或操作可以以不同的顺序来实现。此外,概述的功能和操作仅作为示例提供,并且某些功能和操作可以是可选的、可以组合为较少的功能和操作,或者可以扩展为附加的功能和操作,而不背离所公开实施例的实质。
图6示出了根据本公开的一个或多个实施例的在SDN内建立控制平面和数据平面的另一示例方法600的流程图。该方法可以由处理逻辑执行,该处理逻辑可以包括硬件(电路、专用逻辑等)、软件(例如在通用计算机系统或专用机器上运行的软件)或两者的组合,该处理逻辑可以包括在任何控制设备(例如,图1-4的控制设备120、220或320),或其他计算机系统或设备中。然而,可以使用另一系统或系统的组合来执行这些方法。为了简化说明,将本文描述的方法描绘和描述为一系列动作。然而,根据本公开的动作可以以各种顺序和/或同时发生,并且本文未呈现和描述其他动作。此外,并非所有示出的动作都可以用于实施根据所公开的主题的方法。另外,本领域技术人员将理解并认识到,所述方法可替代地经由状态图或事件被表示为一系列相互关联的状态。另外,在本说明书中公开的方法能够被存储在诸如非暂时性计算机可读介质之类的制品上,以便于将这样的方法传输和转移到计算设备。本文所使用的术语“制品”旨在涵盖可从任何计算机可读设备或存储介质访问的计算机程序。尽管被示为离散的块,但是根据期望的实现,各种块可以被划分为附加的块,被组合为更少的块或被消除。
方法600可以在框605开始,其中处理逻辑可以经由与控制平面相关联的第一控制信道从第一网络设备接收第一安全关联参数。类似地,在框610处,处理逻辑可以经由与控制平面相关联的第二控制信道从第二网络设备接收第二安全关联参数。处理逻辑可以从任意数量的网络设备接收任意数量的安全关联参数。
在框615,处理逻辑可以确定第一网络设备和第二网络设备彼此关联。例如,处理逻辑可以确定第一网络设备和第二网络设备与单个实体(例如,公司)相关联,并因此被允许经由数据平面彼此连接。
在框620,处理逻辑可以将第一安全关联参数发送到第二网络设备。类似地,在框625处,处理逻辑可以将第二安全关联参数发送到第一网络设备。使用经由控制平面(而不是数据平面)共享的安全关联参数的交换,第一网络设备和第二网络设备可以在彼此之间建立数据平面。
本领域的技术人员将认识到,对于这些处理、操作和方法,所执行的功能和/或操作可以以不同的顺序来实现。此外,概述的功能和操作仅作为示例提供,并且某些功能和操作可以是可选的,可以组合为较少的功能和操作,或者可以扩展为附加的功能和操作,而不背离所公开实施例的实质。
图7示出了根据本公开的一个或多个实施例的在SDN内建立控制平面和数据平面的另一示例方法700的流程图。该方法可以由处理逻辑执行,该处理逻辑可以包括硬件(电路、专用逻辑等)、软件(例如在通用计算机系统或专用机器上运行的软件)或两者的组合,该处理逻辑可以包括在任何控制设备(例如,图1-4的控制设备120、220或320)、网络设备(例如,图1-4的边缘网络设备110、210或310)中,或其他计算机系统或设备中。然而,可以使用另一系统或系统的组合来执行这些方法。为了简化说明,本文描述的方法被描绘和描述为一系列动作。然而,根据本公开的动作可以以各种顺序和/或同时发生,并且本文未呈现和描述其他动作。此外,并非所有示出的动作都可以用于实施根据所公开的主题的方法。另外,本领域技术人员将理解并认识到,所述方法可替代地经由状态图或事件被表示为一系列相互关联的状态。另外,在本说明书中公开的方法能够被存储在诸如非暂时性计算机可读介质之类的制品上,以便于将这样的方法传输和转移到计算设备。本文所使用的术语“制品”旨在涵盖可从任何计算机可读设备或存储介质访问的计算机程序。尽管被示为离散的块,但是根据期望的实现,各种块可以被划分为附加的块、被组合为更少的块或被消除。
为了易于解释,处理逻辑可以与具有两个传输连接(一个到专用网络,一个到公共网络(例如,因特网))的边缘网络设备相关联。在方法700下,如下所述,可以生成传输连接的列表,并且稍后将其用于与各种设备建立数据平面会话。数据平面会话可以串行建立,或者至少部分地并行建立。
方法700可以在框705处开始,在框705处,处理逻辑可以确定管理设备是否被配置用于特定传输。当在框705处针对特定传输未配置管理设备时(例如,“否”),处理逻辑可以在框710处确定是否有任何其他传输。当在框710处有任何其他传输(例如,“是”),处理逻辑可以用其他传输配置管理设备,并前进到框705。
当在框705处将管理设备配置为用于特定传输时(例如,“是”),处理逻辑可以在框715处与管理设备建立连接并且可以开始收集网络地址转换(NAT)信息。在框720处,处理逻辑可以确定网络中是否存在控制设备。在框720处,当控制设备与网络一起存在时(例如,“是”),处理逻辑可以在框725处与控制设备建立控制平面会话。处理逻辑可以前进至框710。
在框705处,当控制设备不与网络一起出现时(例如,“否”),处理逻辑可以在框710处确定其他传输是否可用。当在框710处没有任何其他传输时(例如,“否”),在框730处,处理逻辑可以确定是否已经为所有传输建立了控制会话。
当在框730处为所有传输建立了控制会话时(例如,“是”),处理逻辑可以与其他授权边缘网络设备建立数据平面连接。当在框730处为所有传输尚未建立控制会话时(例如,“否”),在框740处,处理逻辑可以等待其他传输变得可用。
本领域的技术人员将意识到,对于这些处理、操作和方法,所执行的功能和/或操作可以以不同的顺序来实现。此外,概述的功能和操作仅作为示例提供,某些功能和操作可能是可选的,组合成更少的功能和操作,或扩展为其他功能和操作,而不背离所公开实施例的实质。
图8示出了根据本公开中描述的至少一个实施例的示例计算系统800。系统800可以包括被配置为测试软件的任何合适的系统、装置或设备。计算系统800可以包括处理器810、存储器820、数据存储830和通信单元840,所有这些都可以通信地耦合。在一些实施例中,任何网络设备(例如,图1-4的边缘网络设备110、210或310)、控制设备(例如,图1-4的控制设备120、220或320)或本公开的其他计算设备可以被实现为计算系统800。另外或替代地,网络设备、控制设备、本地计算设备或其他计算设备中的一个或多个可以被实现为在物理计算系统上运行的虚拟机(例如计算系统800)。
通常,处理器810可以包括任何合适的专用或通用计算机、计算实体或包括各种计算机硬件或软件模块的处理设备,并且可以被配置为执行存储在任何适用的计算机可读存储介质上的指令。例如,处理器810可以包括微处理器、微控制器、数字信号处理器(DSP)、专用集成电路(ASIC)、现场可编程门阵列(FPGA)或被配置为解释和/或执行程序指令和/或处理数据的任何其他数字或模拟电路。
尽管在图8中被示为单个处理器,但是应当理解,处理器810可以包括分布在任意数量的网络或物理位置上的任意数量的处理器,这些处理器被配置成单独地或共同地执行本公开中描述的任意数量的操作。在一些实施例中,处理器810可以解释和/或执行存储在存储器820、数据存储830、或存储器820和数据存储830中的程序指令和/或处理数据。在一些实施例中,处理器810可以从数据存储830中获取程序指令,并将程序指令加载到存储器820中。
在程序指令被加载到存储器820中之后,处理器810可以执行程序指令,诸如分别执行图5-7的方法500、600和/或700的指令。例如,处理器810可以确定业务流与重新路由应用相关联,并以最佳性能分数沿着路径重新路由业务流。作为另一个示例,处理器810可以重写DNS查询和/或DNS答复。作为另外的示例,处理器810可以路由流,使得可以使用与重新路由的路径相关联的NAT出口点。作为另外的示例,处理器810可以确定来自多个路径的哪个路径是最佳路径,并相应地重新路由业务。
存储器820和数据存储830可以包括计算机可读存储介质或一个或多个计算机可读存储介质,用于承载或具有存储在其上的计算机可执行指令或数据结构。这样的计算机可读存储介质可以是可由通用或专用计算机(例如,处理器810)访问的任何可用介质。在一些实施例中,计算系统800可以包括或可以不包括存储器820和数据存储器830中的任何一个。
通过示例而非限制,这样的计算机可读存储介质可以包括非暂时性计算机可读存储介质,该非暂时性计算机可读存储介质包括随机存取存储器(RAM)、只读存储器(ROM)、电可擦可编程只读存储器存储器(EEPROM)、光盘只读存储器(CD-ROM)或其他光盘存储设备、磁盘存储设备或其他磁性存储设备、闪存设备(例如固态存储设备)或任何其他可用于在硬盘中以计算机可执行指令或数据结构的形式承载或存储所需程序代码的存储介质、和可以由通用或专用计算机访问的任何其他存储介质。上述的组合也可以包括在计算机可读存储介质的范围内。计算机可执行指令可以包括例如被配置成使处理器810执行特定操作或一组操作的指令和数据。
通信单元840可以包括被配置为通过诸如MPLS连接、因特网、蜂窝网络(例如,LTE网络)之类的网络发送或接收信息的任何组件、设备、系统或其组合。在一些实施例中,通信单元840可以与位于其他位置、相同位置甚至同一系统内的其他组件的其他设备进行通信。例如,通信单元840可以包括调制解调器、网卡(无线或有线)、光通信设备、红外通信设备、无线通信设备(例如天线)、芯片组(例如蓝牙设备)、802.6设备(例如城域网(MAN)、WiFi设备、WiMax设备,蜂窝通信设施等)和/等,或其任意组合。通信单元840可以允许与本公开中描述的网络和/或任何其他设备或系统交换数据。例如,通信单元840可以允许系统800与其他系统通信,例如网络设备、控制设备和/或其他网络。
在不脱离本公开的范围的情况下,可以对系统800进行修改、增加或省略。例如,数据存储830可以是位于多个位置并且由处理器810通过网络访问的多个不同的存储介质。
如上所述,本公开中描述的实施例可以包括使用包括各种计算机硬件或软件模块的专用或通用计算机(例如,图8的处理器810),如以下更详细地讨论的。此外,如上所述,可以使用计算机可读介质(例如,图8的存储器820或数据存储830)来实现本公开中描述的实施例,所述计算机可读介质用于承载或具有存储在其上的计算机可执行指令或数据结构。
如本公开中所使用的,术语“模块”或“组件”可以指被配置为执行模块或组件和/或可以存储在和/或由计算系统的通用硬件(例如,计算机可读介质、处理设备或某些其他硬件)执行的软件对象或软件例程的动作的特定硬件实现。在一些实施例中,本公开中描述的不同组件、模块、引擎和服务可以被实现为在计算系统上执行的对象或处理(例如,作为单独的线程)。尽管一般性地将本公开中描述的一些系统和方法描述为以软件实现(存储在通用硬件上和/或由通用硬件执行),但是特定的硬件实现或软件与特定的硬件实现的组合也是可能的并且可以预期的。在该描述中,“计算实体”可以是如本公开先前所定义的任何计算系统,或者是在计算系统上运行的任何模块或模块的组合。
根据惯例,附图中所示的各种特征可能未按比例绘制。本公开中呈现的图示并不意味着是任何特定装置(例如,设备、系统等)或方法的实际视图,而仅是用于描述本公开的各种实施例的理想化表示。因此,为了清楚起见,各种特征的尺寸可以任意地扩大或减小。另外,为了清楚起见,可以简化一些附图。因此,附图可能未描绘给定装置(例如,设备)的所有组件或特定方法的所有操作。
在本公开中并且特别是在所附权利要求中使用的术语(例如,所附权利要求的主体)通常旨在作为“开放”术语(例如,术语“包括”应解释为“包括但不限于”,术语“具有”应解释为“至少具有”,术语“包含”应解释为“包括但不限于”)。
另外,如果旨在特定数量的引入的权利要求叙述,则该意图将在权利要求中明确地叙述,并且在没有这种叙述的情况下,不存在这种意图。例如,为了帮助理解,以下所附权利要求可以包含介绍性短语“至少一个”和“一个或多个”的使用以引入权利要求叙述。
另外,即使明确地叙述了具体数量的引入的权利要求叙述,本领域技术人员将认识到,这样的叙述应被解释为至少意味着所叙述的数目(例如,“两次叙述”的裸露叙述(不带其他修饰语)是指至少两次叙述,或两次或多次叙述)。此外,在使用类似于“A,B和C等中的至少一个”或“A,B和C等中的一个或多个”的约定的这些实例中,通常这样的构造旨在包括单独A、单独B、单独C、A和B一起、A和C一起、B和C一起、或A,B和C一起等。
此外,无论在说明书、权利要求书还是在附图中呈现两个或更多个替代术语的任何歧义词或短语都应理解为考虑了包括一个术语、两个术语中的任一个或两个术语的可能性。例如,短语“A或B”应被理解为包括“A”或“B”或“A和B”的可能性。
然而,此类短语的使用不应解释为暗示由不定冠词“一个(a)”或“一个(an)”引入的权利要求叙述将任何包含这种引入的权利要求叙述的特定权利要求限制为仅包含一个这样的叙述的实施方式,即使相同的权利要求包括介绍性短语“一个或多个”或“至少一个”以及例如“一个(a)”或“一个(an)”的不定冠词(例如,“一个(a)”和/或“一个(an)”也应解释为是指“至少一个”或“一个或多个”);使用用于引入权利要求叙述的定冠词也是如此。
另外,术语“第一”、“第二”、“第三”等的使用在本文中不一定用于表示元件的特定顺序或数量。通常,术语“第一”、“第二”、“第三”等用于区分作为通用标识符的不同元素。没有表示术语“第一”、“第二”、“第三”等表示特定顺序的显示,这些术语不应理解为表示特定顺序。此外,在没有表明术语“第一”、“第二”、“第三”等表示特定数量的元件的情况下,这些术语不应理解为表示特定数量的元件。例如,第一小部件可被描述为具有第一侧面,而第二小部件可被描述为具有第二侧面。相对于第二小部件使用术语“第二侧”可以是将第二小部件的这一侧与第一小部件的“第一侧”区分开,而不是暗示第二小部件具有两侧。
本公开中引用的所有示例和条件语言旨在用于教学目的,以帮助读者理解本发明和发明人为进一步发展本领域所做出的构思,并且应解释为不限于列举的示例和条件。尽管详细描述了本公开的实施例,但是应当理解,在不脱离本公开的精神和范围的情况下,可以对其进行各种改变、替换和更改。
Claims (18)
1.一种用于计算机通信的方法,包括:
在第一网络的控制器处,通过控制平面从第一网络设备接收第一安全关联参数,以用于与所述第一网络设备建立数据平面;
在所述控制器处,通过所述控制平面从第二网络设备接收第二安全关联参数,以用于与所述第二网络设备建立所述数据平面;
在所述控制器处,基于所述第一网络设备和所述第二网络设备与同一实体相关联,确定所述第一网设备和所述第二网设备被允许经由所述数据平面彼此连接,所述数据平面是至少部分地通过第二网络延伸的,其中,所述控制平面针对至少部分地通过所述第二网络延伸的所述数据平面提供分离的路径功能;以及
通过所述控制平面从所述控制器向所述第二网络设备发送所述第一安全关联参数,以用于通过所述第二网络与所述第一网络设备建立所述数据平面。
2.根据权利要求1所述的方法,还包括通过所述控制器抑制通过所述第二网络向所述第二网络设备发送所述第一安全关联参数。
3.根据权利要求1所述的方法,其中,所述第二网络是公共网络。
4.根据权利要求1所述的方法,其中,所述第一网络是专用网络。
5.根据权利要求1所述的方法,还包括通过所述控制平面从所述控制器向所述第一网络设备发送所述第二安全关联参数,以用于通过所述第二网络与所述第二网络设备建立所述数据平面。
6.根据权利要求1所述的方法,其中,所述第一网络设备和所述第二网络设备被配置为抑制在彼此之间的所述控制平面中建立一个或多个控制平面信道。
7.根据权利要求1所述的方法,还包括:
在所述控制器处,通过所述控制平面从所述第二网络设备接收由所述第二网络设备生成的对称密钥对中的对称密钥作为所述第一安全关联参数的一部分,其中,所述对称密钥对被生成用于与所述第二网络设备建立所述数据平面;以及
基于所述对称密钥对,通过所述控制平面从所述控制器向所述第一网络设备发送所述对称密钥,以用于通过所述第二网络与所述第二网络设备建立所述数据平面。
8.一种用于计算机通信的系统,包括:
第一网络的控制器的一个或多个处理器;和
非暂时性计算机可读介质,包括存储在其中的指令,所述指令在由所述一个或多个处理器执行时,使得所述控制器执行以下操作:
通过控制平面从第一网络设备接收第一安全关联参数,以用于与所述第一网络设备建立数据平面;
通过所述控制平面从第二网络设备接收第二安全关联参数,以用于与所述第二网络设备建立所述数据平面;
基于所述第一网络设备和所述第二网络设备与同一实体相关联,确定所述第一网设备和所述第二网设备被允许经由所述数据平面彼此连接,所述数据平面是至少部分地通过第二网络延伸的,其中,所述控制平面针对至少部分地通过所述第二网络延伸的所述数据平面提供分离的路径功能;以及
通过所述控制平面向所述第二网络设备发送所述第一安全关联参数,以用于通过所述第二网络与所述第一网络设备建立所述数据平面。
9.根据权利要求8所述的系统,其中,所述指令在由所述一个或多个处理器执行时,还使得所述控制器抑制通过所述第二网络向所述第二网络设备发送所述第一安全关联参数。
10.根据权利要求8所述的系统,其中,所述第二网络是公共网络。
11.根据权利要求8所述的系统,其中,所述第一网络是专用网络。
12.根据权利要求8所述的系统,其中,所述指令在由所述一个或多个处理器执行时,还使得所述控制器通过所述控制平面向所述第一网络设备发送所述第二安全关联参数,以用于通过所述第二网络与所述第二网络设备建立所述数据平面。
13.根据权利要求8所述的系统,其中,所述第一网络设备和所述第二网络设备被配置为抑制在彼此之间的所述控制平面中建立一个或多个控制平面信道。
14.根据权利要求8所述的系统,其中,所述指令在由所述一个或多个处理器执行时,还使得所述控制器:
通过所述控制平面从所述第二网络设备接收由所述第二网络设备生成的对称密钥对中的对称密钥作为所述第一安全关联参数的一部分,其中,所述对称密钥对被生成用于与所述第二网络设备建立所述数据平面;以及
基于所述对称密钥对,通过所述控制平面向所述第一网络设备发送所述对称密钥,以用于通过所述第二网络与所述第二网络设备建立所述数据平面。
15.一种非暂时性计算机可读存储介质,包括存储在其中的指令,所述指令在由一个或多个处理器执行时,使得所述一个或多个处理器执行以下操作:
在第一网络的控制器处,通过控制平面从第一网络设备接收第一安全关联参数,以用于与所述第一网络设备建立数据平面;
在所述控制器处,通过所述控制平面从第二网络设备接收第二安全关联参数,以用于与所述第二网络设备建立所述数据平面;
在所述控制器处,基于所述第一网络设备和所述第二网络设备与同一实体相关联,确定所述第一网设备和所述第二网设备被允许经由所述数据平面彼此连接,所述数据平面是至少部分地通过第二网络延伸的,其中,所述控制平面针对至少部分地通过所述第二网络延伸的所述数据平面提供分离的路径功能;以及
通过所述控制平面从所述控制器向所述第二网络设备发送所述第一安全关联参数,以用于通过所述第二网络与所述第一网络设备建立所述数据平面。
16.根据权利要求15所述的非暂时性计算机可读存储介质,其中,所述第二网络是公共网络,并且所述第一网络是专用网络。
17.根据权利要求15所述的非暂时性计算机可读存储介质,其中,所述指令在由所述一个或多个处理器执行时,进一步使得所述控制器抑制通过所述第二网络向所述第二网络设备发送所述第一安全关联参数。
18.根据权利要求15所述的非暂时性计算机可读存储介质,其中,所述指令在由所述一个或多个处理器执行时,进一步使得所述控制器通过所述控制平面向所述第一网络设备发送所述第二安全关联参数,以用于通过所述第二网络与所述第二网络设备建立所述数据平面。
Applications Claiming Priority (6)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US201762539431P | 2017-07-31 | 2017-07-31 | |
US62/539,431 | 2017-07-31 | ||
US16/021,281 | 2018-06-28 | ||
US16/021,281 US10944733B2 (en) | 2017-07-31 | 2018-06-28 | Dynamic disassociated channel encryption key distribution |
CN201880049784.3A CN111052702A (zh) | 2017-07-31 | 2018-07-25 | 动态分离的信道加密密钥分配 |
PCT/US2018/043622 WO2019027751A1 (en) | 2017-07-31 | 2018-07-25 | DYNAMIC DISTRIBUTION OF NON-ASSOCIATED CHANNEL ENCRYPTION KEY |
Related Parent Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201880049784.3A Division CN111052702A (zh) | 2017-07-31 | 2018-07-25 | 动态分离的信道加密密钥分配 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN117714370A true CN117714370A (zh) | 2024-03-15 |
Family
ID=65038347
Family Applications (2)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202410037943.5A Pending CN117714370A (zh) | 2017-07-31 | 2018-07-25 | 动态分离的信道加密密钥分配 |
CN201880049784.3A Pending CN111052702A (zh) | 2017-07-31 | 2018-07-25 | 动态分离的信道加密密钥分配 |
Family Applications After (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201880049784.3A Pending CN111052702A (zh) | 2017-07-31 | 2018-07-25 | 动态分离的信道加密密钥分配 |
Country Status (6)
Country | Link |
---|---|
US (2) | US10944733B2 (zh) |
EP (1) | EP3662632A1 (zh) |
JP (1) | JP7125471B2 (zh) |
CN (2) | CN117714370A (zh) |
CA (1) | CA3071823A1 (zh) |
WO (1) | WO2019027751A1 (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20220346051A1 (en) * | 2019-11-08 | 2022-10-27 | Apostolis Salkintzis | Registering with a mobile network through another mobile network |
Families Citing this family (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10944733B2 (en) | 2017-07-31 | 2021-03-09 | Cisco Technology, Inc. | Dynamic disassociated channel encryption key distribution |
US20210037091A1 (en) * | 2019-07-30 | 2021-02-04 | Cisco Technology, Inc. | Peer discovery process for disconnected nodes in a software defined network |
CN113163276A (zh) * | 2020-01-22 | 2021-07-23 | 华为技术有限公司 | 路由信息的发布方法、装置及系统 |
US20220327003A1 (en) | 2021-04-09 | 2022-10-13 | Oracle International Corporation | Cloud edge device virtualization |
US11824973B2 (en) * | 2022-02-14 | 2023-11-21 | Fortinet, Inc. | Systems and methods for enhanced key security in an SD-WAN network environment |
Family Cites Families (26)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5481613A (en) * | 1994-04-15 | 1996-01-02 | Northern Telecom Limited | Computer network cryptographic key distribution system |
US6611913B1 (en) * | 1999-03-29 | 2003-08-26 | Verizon Laboratories Inc. | Escrowed key distribution for over-the-air service provisioning in wireless communication networks |
US7350076B1 (en) * | 2001-05-16 | 2008-03-25 | 3Com Corporation | Scheme for device and user authentication with key distribution in a wireless network |
US7310424B2 (en) * | 2001-08-22 | 2007-12-18 | General Atomics | Encryption key distribution and network registration system, apparatus and method |
US7181620B1 (en) * | 2001-11-09 | 2007-02-20 | Cisco Technology, Inc. | Method and apparatus providing secure initialization of network devices using a cryptographic key distribution approach |
US20080115199A1 (en) * | 2001-12-06 | 2008-05-15 | Albert Young | Scheme for device and user authentication with key distribution in a wireless network |
US7447780B2 (en) * | 2003-11-21 | 2008-11-04 | Time Warner Cable, Inc. | Technique for communicating information over a broadband communications network |
US8582777B2 (en) * | 2006-05-03 | 2013-11-12 | Samsung Electronics Co., Ltd. | Method and system for lightweight key distribution in a wireless network |
KR100925329B1 (ko) * | 2007-12-03 | 2009-11-04 | 한국전자통신연구원 | 디지털케이블 방송망에서 다운로더블 제한수신시스템을위한 상호인증 및 키 공유 방법과 장치 |
CN101697528B (zh) * | 2009-10-30 | 2011-11-16 | 杭州华三通信技术有限公司 | 一种nat网关设备之间的负载分担方法和设备 |
US8880869B1 (en) * | 2010-11-22 | 2014-11-04 | Juniper Networks, Inc. | Secure wireless local area network (WLAN) for data and control traffic |
US9118732B2 (en) * | 2011-05-05 | 2015-08-25 | At&T Intellectual Property I, L.P. | Control plane for sensor communication |
US20160014127A1 (en) * | 2013-01-16 | 2016-01-14 | Behzad Mohebbi | Methods and apparatus for hybrid access to a core network based on proxied authentication |
US9100346B2 (en) | 2013-03-15 | 2015-08-04 | Cisco Technology, Inc. | Commmon agent framework for network devices |
US10333779B2 (en) * | 2013-04-10 | 2019-06-25 | Huawei Technologies Co., Ltd. | System and method for providing a software defined protocol stack |
JP6162337B2 (ja) * | 2013-08-12 | 2017-07-12 | ヒューレット−パッカード デベロップメント カンパニー エル.ピー.Hewlett‐Packard Development Company, L.P. | アプリケーションアウェアネットワーク管理 |
CN106464659A (zh) * | 2014-06-30 | 2017-02-22 | 上海贝尔股份有限公司 | 软件定义网络中的安全 |
US10375043B2 (en) | 2014-10-28 | 2019-08-06 | International Business Machines Corporation | End-to-end encryption in a software defined network |
CN104734954B (zh) * | 2015-03-27 | 2019-05-10 | 华为技术有限公司 | 一种用于软件定义网络的路由确定方法和装置 |
CN104917750B (zh) * | 2015-04-16 | 2017-11-21 | 中国科学院计算技术研究所 | 一种面向sdn网络的控制层与数据层通信通道自配置方法及其系统 |
US9553661B2 (en) * | 2015-05-18 | 2017-01-24 | Ciena Corporation | Adaptive preconfiguration in optical transport network |
US9998431B2 (en) * | 2015-06-09 | 2018-06-12 | Intel Corporation | System, apparatus and method for secure network bridging using a rendezvous service and multiple key distribution servers |
CN106330649B (zh) * | 2015-06-18 | 2019-08-02 | 新华三技术有限公司 | 一种跨软件定义网络的数据报文转发方法和装置 |
JP6409974B2 (ja) * | 2015-07-17 | 2018-10-24 | 日本電気株式会社 | 通信システム、通信装置、通信方法、端末、プログラム |
WO2017052507A1 (en) | 2015-09-22 | 2017-03-30 | Hewlett Packard Enterprise Development Lp | Encrypted data packet |
US10944733B2 (en) | 2017-07-31 | 2021-03-09 | Cisco Technology, Inc. | Dynamic disassociated channel encryption key distribution |
-
2018
- 2018-06-28 US US16/021,281 patent/US10944733B2/en active Active
- 2018-07-25 CN CN202410037943.5A patent/CN117714370A/zh active Pending
- 2018-07-25 CN CN201880049784.3A patent/CN111052702A/zh active Pending
- 2018-07-25 EP EP18762174.3A patent/EP3662632A1/en active Pending
- 2018-07-25 CA CA3071823A patent/CA3071823A1/en active Pending
- 2018-07-25 WO PCT/US2018/043622 patent/WO2019027751A1/en unknown
- 2018-07-25 JP JP2020503029A patent/JP7125471B2/ja active Active
-
2020
- 2020-09-21 US US17/027,424 patent/US11546312B2/en active Active
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20220346051A1 (en) * | 2019-11-08 | 2022-10-27 | Apostolis Salkintzis | Registering with a mobile network through another mobile network |
US12089177B2 (en) * | 2019-11-08 | 2024-09-10 | Lenovo (Singapore) Pte. Ltd. | Registering with a mobile network through another mobile network |
Also Published As
Publication number | Publication date |
---|---|
EP3662632A1 (en) | 2020-06-10 |
CA3071823A1 (en) | 2019-02-07 |
CN111052702A (zh) | 2020-04-21 |
US10944733B2 (en) | 2021-03-09 |
US20210006546A1 (en) | 2021-01-07 |
WO2019027751A1 (en) | 2019-02-07 |
JP2020530957A (ja) | 2020-10-29 |
US20190036687A1 (en) | 2019-01-31 |
JP7125471B2 (ja) | 2022-08-24 |
US11546312B2 (en) | 2023-01-03 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
EP3622680B1 (en) | Routing network traffic | |
EP3622679B1 (en) | Routing network traffic based on performance | |
US11722403B2 (en) | Routing network traffic based on DNS | |
US11658898B2 (en) | Routing network traffic based on destination | |
US11546312B2 (en) | Dynamic disassociated channel encryption key distribution | |
US20190036814A1 (en) | Traffic steering with path ordering |
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 |