本文主要描述了在大规模的网络环境中部署服务功能存在的一些问题,还提出了几个关键领域,即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中的问题描述的更多相关文章

  1. SFC中的故障管理

    1.SFC中包的格式 网络服务包头,当Obit被设置为1时,表示一个SFC OAM消息 OAM Type:SFC OAM的类型(1.连接认证,2.持续性检验,3.路由跟踪,4.性能度量) SFC OA ...

  2. Linux中的文件描述符与打开文件之间的关系

    Linux中的文件描述符与打开文件之间的关系 导读 内核(kernel)利用文件描述符(file descriptor)来访问文件.文件描述符是非负整数.打开现存文件或新建文件时,内核会返回一个文件描 ...

  3. Linux中的文件描述符与打开文件之间的关系------------每天进步一点点系列

    http://blog.csdn.net/cywosp/article/details/38965239 1. 概述     在Linux系统中一切皆可以看成是文件,文件又可分为:普通文件.目录文件. ...

  4. (转)Linux中的文件描述符

    本文转自:http://blog.csdn.net/cywosp/article/details/38965239 作者:cywosp 1. 概述 在Linux系统中一切皆可以看成是文件,文件又可分为 ...

  5. 用状态机表示SFC中的并行分支

    过去一直认为,状态机表示SFC会不会是任务复杂化,这次简单实验了一下,感觉还可以.请看下面的控制. 在SFC中,A和B是一对并行分支,汇合后转移到C分支中,怎么了用状态机表示呢?这里我们在状态机里分别 ...

  6. linux内核中的文件描述符(二)--socket和文件描述符

    http://blog.csdn.net/ce123_zhouwei/article/details/8459730 Linux内核中的文件描述符(二)--socket和文件描述符 Kernel ve ...

  7. [svc]linux中的文件描述符(file descriptor)和文件

    linux中的文件描述符(file descriptor)和文件 linux为了实现一切皆文件的设计哲学,不仅将数据抽象成了文件,也将一切操作和资源抽象成了文件,比如说硬件设备,socket,磁盘,进 ...

  8. idea中 参数没有描述报错 @param XX tag description is missing错误,去除黄色警告

    最近在使用idea开发工具,在方法备注中参数没有描述报错就会报一些黄色警告: @param XX tag description is missing,下面展示去除黄色警告的方法 File--sett ...

  9. 【Azure云服务 Cloud Service】Cloud Service的实例(VM)中的服务描述Software Protection 与 Windows Defender, 如何设置Windows Defender Antivirus服务

    1)Software Protection 与 Windows Defender是两个独立的服务.在Windows 服务中他们的描述分别为 Software Protection Enables th ...

随机推荐

  1. #1094 : Lost in the City

    时间限制:10000ms 单点时限:1000ms 内存限制:256MB 描述 Little Hi gets lost in the city. He does not know where he is ...

  2. CI框架,双层弹出框的样式实现

    在弹出的主页面上,写一个隐藏的悬浮的div 通过标记使他显示,通过计数器使他关闭 部分代码: <div id="common_msg"></div>//主页 ...

  3. PHP如何使用GeoIP数据库

    1.首先下载GeoIP的IP库.参考<利用GeoIP数据库及API进行地理定位查询>.下载后解压,得到一个GeoIP.dat文件 2.新建一个文件geoip.inc.内容为 <?ph ...

  4. 一鼓作气 博客--第五篇 note5

    一.迭代器 二.装饰器 三.生成器 1.生成列表的方式有几种 2.把列表每个数都加1 2.1 data =[1,2,3] for i in map(lambda x:x+1,data):print(i ...

  5. 如何在Windows 2003+IIS6的环境下找回应用程序池(application pool)中的服务账号密码

    上一篇文章说了说如何在Win2008+iis7中取出SharePoint管理账号密码的方法. 整个过程简单的讲,就是通过使用要找回密码的账号用来在SharePoint中创建一个临时的Web Appli ...

  6. nodejs事件轮询详述

    目录 概述 nodejs特点 事件轮询 关于异步方法 概述 关于nodejs的介绍网上资料非常多,最近由于在整理一些函数式编程的资料时,多次遇到nodejs有关的内容.所以就打算专门写一篇文章总结一下 ...

  7. Wireshark抓包分析/TCP/Http/Https及代理IP的识别

    前言 坦白讲,没想好怎样的开头.辗转三年过去了.一切已经变化了许多,一切似乎从没有改变. 前段时间调研了一次代理相关的知识,简单整理一下分享之.如有错误,欢迎指正. 涉及 Proxy IP应用 原理/ ...

  8. Ubuntu 14 安装 .Net Core

    .Net Core的安装包的分发地址如下: https://apt-mo.trafficmanager.net/repos/dotnet-release/pool/main/d/ 方法一: 可以分别手 ...

  9. C/C++预处理指令#define,#ifdef,#ifndef,#endif…

    2016年12月29日更新: 今天查看以前文件的时候, 突然发现了#error 这个预处理指令.然后回想一下工作, 发现这个指令使用场景还是很多的.比如: 一个项目的模块儿之多,源文件之大,代码之多, ...

  10. VB6.0中,DTPicker日期、时间控件不允许为空时,采用文本框与日期、时间控件相互替换赋值(解决方案)

    VB6.0中,日期.时间控件不允许为空时,采用文本框与日期.时间控件相互替换赋值,或许是一个不错的选择. 实现效果如下图: 文本框txtStopTime1 时间框DTStopTime1(DTPicke ...