SFC中的问题描述
本文主要描述了在大规模的网络环境中部署服务功能存在的一些问题,还提出了几个关键领域,即SFC工作组将要探讨的关于SFC结构、工作协议、相关文档。
1.问题描述
SFC工作组致力于解决的几个服务部署中存在的问题
1.1 拓扑相互依赖
网络服务的部署依赖于网络拓扑(物理网络、虚拟网络、混合网络),例如,当流量需要通过防火墙,则需要在网络路径上部署防火墙,或者引导网络流通过防火墙。服务传送上的限制可能抑制网络运营商的资源利用率、降低灵活性。拓扑的耦合限制了服务功能的部署和选择:服务功能在拓扑中的位置是固定的,因此部署和选择服务功能需要考虑拓扑信息。如下是一个简单例子:网络服务将服务负载均衡器作为一个默认网关,当网络服务响应流量负载不均衡时,所有通过服务的流量必须经过负载均衡器,强制网络管理员创建一个复杂的路由机制或者额外的接口来提供另一种拓扑结构。
1.2 配置复杂
1.3 限制高可用性
1.4服务功能顺序的一致性
服务功能本身是相互独立的,然而对于管理员来说,许多服务功能有一个严格的安放顺序。管理员没有一致的规则放置这些服务功能,因此选择链的顺序是复杂、繁琐的。
1.5 应用服务策略
服务功能依据拓扑信息来选择服务策略,由于扩展、延迟、复杂性的原因,收集拓扑信息越来越不可行,中心拓扑信息并不包含详细信息,这也迫使服务功能单独执行细粒度的分类,换句话说,拓普信息太粗粒度。
1.6 传输依赖
服务功能和拓扑的耦合性需要服务功能支持许多传输封装或者传输网关功能。
1.7 弹性服务交付
1.8 流量选择标准
特定段的所有流量强制通过该段内的所有服务不管该流量是否需要该服务,这是由于转发拓扑决定了转发规则。在一些部署中,通过路由策略或者访问控制过滤来细粒度流量选择,但这也会导致配置复杂,缺乏灵活性。
1.9 限制端到端服务的透明性
1.10 每一个服务功能的分类/重新分类
每一个服务功能前都需要有分类器,分类器间是相互独立的,不同服务功能的分类器功能是不同的,服务功能可能无法利用其他服务功能的分类结果。
1.11 对称的流量
服务功能链根据服务功能的要求决定是单向还是双向的,许多服务功能如DPI、防火墙都是双向的为了确保流状态的一致性。
1.12 多供应商的服务功能
2. 服务功能链
服务功能链希望通过服务部署解决上述问题,SFC工作组针对如下方面探讨解决方案。
2.1 服务覆盖网络
服务功能链利用特定的覆盖网络创建服务拓扑,覆盖服务提供服务功能的连接。创建一个上层的网络拓扑,该拓扑允许操作者利用覆盖层或者底层网络创建服务功能路径,依据需要在网络上部署服务功能。
从服务拓扑的角度,服务功能可以被看做资源消耗,按照实际需要的顺序连接服务功能(资源),不需要底层网络的改变,很容易的添加网络功能。
服务层能够提供特定服务的信息来进行服务相关的故障诊断。
2.2 业务划分
分类器选择哪些流进入服务网络,分类规则可根据设备能力、顾客需求、售后服务。分类器决定流通过哪个服务功能链,后续的分类根据服务功能链中的重新分类器改变服务功能的顺序。
2.3 SFC封装
SFC的封装可以在数据平面创建服务功能链,以及传送链的信息,如链标识、OAM状态。SFC的封装包含数据平面的元数据,元数据可用逻辑分类结点和服务功能以及服务功能间的信息交换,元数据不是用来传递数据包的。元数据可以包含先前分类器的分类结果、外部的资源信息,服务功能根据元数据进行本地策略决策。
元数据除了共享信息外,从网络拓扑上解耦策略,移除了每个服务功能前的分类器。
3 安全考虑
服务覆盖网络:依据存在的传输协议创建,因此服务覆盖网络需要传输协议的安全机制。如操作者需要认证或者加密,可以使用传输协议的安全机制提供了这样的功能。
SFC中的问题描述的更多相关文章
- SFC中的故障管理
1.SFC中包的格式 网络服务包头,当Obit被设置为1时,表示一个SFC OAM消息 OAM Type:SFC OAM的类型(1.连接认证,2.持续性检验,3.路由跟踪,4.性能度量) SFC OA ...
- Linux中的文件描述符与打开文件之间的关系
Linux中的文件描述符与打开文件之间的关系 导读 内核(kernel)利用文件描述符(file descriptor)来访问文件.文件描述符是非负整数.打开现存文件或新建文件时,内核会返回一个文件描 ...
- Linux中的文件描述符与打开文件之间的关系------------每天进步一点点系列
http://blog.csdn.net/cywosp/article/details/38965239 1. 概述 在Linux系统中一切皆可以看成是文件,文件又可分为:普通文件.目录文件. ...
- (转)Linux中的文件描述符
本文转自:http://blog.csdn.net/cywosp/article/details/38965239 作者:cywosp 1. 概述 在Linux系统中一切皆可以看成是文件,文件又可分为 ...
- 用状态机表示SFC中的并行分支
过去一直认为,状态机表示SFC会不会是任务复杂化,这次简单实验了一下,感觉还可以.请看下面的控制. 在SFC中,A和B是一对并行分支,汇合后转移到C分支中,怎么了用状态机表示呢?这里我们在状态机里分别 ...
- linux内核中的文件描述符(二)--socket和文件描述符
http://blog.csdn.net/ce123_zhouwei/article/details/8459730 Linux内核中的文件描述符(二)--socket和文件描述符 Kernel ve ...
- [svc]linux中的文件描述符(file descriptor)和文件
linux中的文件描述符(file descriptor)和文件 linux为了实现一切皆文件的设计哲学,不仅将数据抽象成了文件,也将一切操作和资源抽象成了文件,比如说硬件设备,socket,磁盘,进 ...
- idea中 参数没有描述报错 @param XX tag description is missing错误,去除黄色警告
最近在使用idea开发工具,在方法备注中参数没有描述报错就会报一些黄色警告: @param XX tag description is missing,下面展示去除黄色警告的方法 File--sett ...
- 【Azure云服务 Cloud Service】Cloud Service的实例(VM)中的服务描述Software Protection 与 Windows Defender, 如何设置Windows Defender Antivirus服务
1)Software Protection 与 Windows Defender是两个独立的服务.在Windows 服务中他们的描述分别为 Software Protection Enables th ...
随机推荐
- maven内部运行原理解析
maven至今还是Java编程语言构建的事实标准,大部分项目还在使用maven来进行构建,因此了解maven内部运行的原理对定位和分析问题还是很有裨益的.本篇文章主要介绍一些maven内部运行过程中的 ...
- C# 匿名对象随笔
最新更新请访问: http://denghejun.github.io C#中匿名对象的一般写法是这样的: object o=new {Name="TestName"}; ...
- C# RabbitMq .net 使用
本文转载来自 [http://www.cnblogs.com/yangecnu/p/Introduce-RabbitMQ.html]写的很详细. 文件安装包官方DEMO下载地址是:http://pan ...
- ASP.NET Core 数据保护(Data Protection 集群场景)【下】
前言 接[中篇],在有一些场景下,我们需要对 ASP.NET Core 的加密方法进行扩展,来适应我们的需求,这个时候就需要使用到了一些 Core 提供的高级的功能. 本文还列举了在集群场景下,有时候 ...
- Microsoft dotnetConf 2015 一些整理
dotnetConf 2015 直播计划: 第一天 (10 个主讲) - .NET Product Teams 主讲人为 .NET 产品开发团队,.NET 产品主要包含 .NET Core.ASP.N ...
- 解读ASP.NET 5 & MVC6系列(7):依赖注入
在前面的章节(Middleware章节)中,我们提到了依赖注入功能(Dependency Injection),ASP.NET 5正式将依赖注入进行了全功能的实现,以便开发人员能够开发更具弹性的组件程 ...
- ABP理论学习之设置管理
返回总目录 本篇目录 介绍 定义设置 获取设置值 更改设置 关于缓存 介绍 每个应用程序都需要存储一些设置信息,然后在应用程序中的某个地方使用这些设置.ABP提供了健壮的基础设施来存储或检索服务端和客 ...
- Hibernate 延迟加载原理
如何简单的理解延迟加载?开发中常见的org.hibernate.LazyInitializationException no session错误又是怎么产生的?下面通过一个简单的例子来解析一下 ...
- .Net组件程序设计之线程、并发管理(一)
.Net组件程序设计之线程.并发管理(一) 1.线程 线程 线程的创建 线程的阻塞 线程挂起 线程睡眠 加入线程 线程中止 现在几乎所有的应用程序都是多线程的,给用户看来就是一个应用程序界面(应用程序 ...
- Redis应用场景一
Redis开创了一种新的数据存储思路,使用Redis,我们不用在面对功能单调的数据库时,把精力放在如何把大象放进冰箱这样的问题上,而是利用Redis灵活多变的数据结构和数据操作,为不同的大象构建不同的 ...