Simple sfc with open software v0.6.0

18
Simple SFC with Open Software Aug. 2016 안종석 NAIM Networks, Inc. [email protected]

Transcript of Simple sfc with open software v0.6.0

Simple SFC with Open Software

Aug. 2016

안종석NAIM Networks, [email protected]

2Copyright ⓒ 2015 by NAIM Networks, Inc. All rights reserved.

Contents

1. SFC 개요2. Assignment for Simple SFC

• Diagram• OVS/VirtualBox/pfSense/Wireshark/PackETH

3. SFC 응용 환경

3Copyright ⓒ 2016 by NAIM Networks, Inc. All rights reserved.

정의: SFC(Service Function Chaining)는 방화벽/NAT/QoS등의 네트워크서비스를 요청한 순서로 기능을 정의하는 기능을 제공이며, 네트워크내에서 서비스들을 연결("stitched" together)하여 서비스 체인을 생성함

5G와 SFC의 관계: 5G를 향한 네트워크의 발전(Evolution)은 인프라를위해 도전해야 할 것이 있으며, 네트워크의 모든 세그먼트를 가상화 하여목표한 서비스를 제공하기 위해서 통신 사업자의 기존의 모든영역(Local/Remote) 인프라는 물론 RAN까지 확장하는 SFC가 필요 할것임

• https://wiki.opnfv.org/• https://wiki.opnfv.org/display/sfc/Service+Function+Chaining+Home

1. SFC 개요

• Service Function Chaining Dataplane Elements in Mobile Networks• draft-aranda-sfc-dp-mobile-01• https://tools.ietf.org/html/draft-aranda-sfc-dp-mobile-00

4Copyright ⓒ 2016 by NAIM Networks, Inc. All rights reserved.

SFC 아키텍처 (ONF) L4-L7 SDN SFC Architecture

SFC Management Plane 정의: 콘트롤 플레인과 연결되어 정책을 토폴로지 경로로

변환

1. SFC 개요

5Copyright ⓒ 2016 by NAIM Networks, Inc. All rights reserved.

SF1

SFF 1

DestinationClassifierSource

SF-Proxy

SF4

SF3

IETF 표준(의 SFC 요소) Service Function(SF) : 수신한 패킷에 지정한 처리를 하는 기능 (방화벽, DPI, NAT,

LB, 기타)

Service Function Forwarder (SFF): 연결된 하나 이상의 서비스 기능(SF)으로 SFC

캡슐화 상태에서 트래픽을 전송

Service Function Proxy : SFC 캡슐화 캐슐을 제거하여 SFC-unaware 서비스

기능을 제공

Classifier : 등급화를 수행하는 데이터플레인 요소

SFF 2

SF2

Pack

et

Pack

et

Packet

Pack

et

Packet

Pack

et

Packet

Packet

Packet

Packet

NSH 헤더

Packet

Transport Encap (VxLAN-GPE, GPE, MPLS, LISP)

1. SFC 개요

https://tools.ietf.org/html/draft-ietf-sfc-architecture-11

6Copyright ⓒ 2016 by NAIM Networks, Inc. All rights reserved.

OVSDB 1

SF1

SFF 1(OVS Bridge 1)

SF3

OVS의 SFC 요소 OVS는 IETF 표준의 Classify, Service Function Forwarder(SFF) 제공

OVS는 VxLAN 제공

SFF 2(OVS Bridge 2)

SF2

OVSDB 2

SFF 3(OVS Bridge 3)

SF5SF4

SFF 4(OVS Bridge 4)

eth0 eth0eth0eth0 eth0

vnic1 vnic2 vnic1 vnic1vnic1 vnic2

eth0 eth1 eth0 eth1

Classify / NSH 추가

VxLAN 터널: SFC 외부를 위한VTEP 프로그램

NSH 제거

1. SFC 개요

7Copyright ⓒ 2016 by NAIM Networks, Inc. All rights reserved.

오픈스택(OpenStack)의 SFC: 뉴트론(Neutron) 내에서 SFC를 구현하기위한 API를 제공하는 프로젝트

오픈스택의 SFC 정의: SFC(Service Function Chaining)는 전형적인 IP 네트워크에서 목적지 기반의 전달보다 우선하는 메커니즘이다. 개념적으로 물리네트워크의 정책기반라우팅(PBR)을 관련하고 있으나전형적으로 SDN 기술을 고려한다. 넓은 범위의 기능을 위해 사용 될 수있으나 보안 기능들의 연결에 자주 사용 한다. SFC는 기본적으로 목적지IP 주소 기반의 라우팅 테이블을 사용하지 않는 경로로 흐른다. SFC는전통적으로 물리적 환경에서 장비들을 케이블로 연결하여 구현 하던것을 가상환경 내에서 NFV(Network Function Virtualization )와 연결하여일련의 네트워크 기능들을 재창조

1. SFC 개요

8Copyright ⓒ 2016 by NAIM Networks, Inc. All rights reserved.

VxLAN/NSH 이슈: 이더넷 Payload가 아닌 신호 메커니즘이 아직 없음

• 새로운 Payload를 표시하기 위해 UDP 주소를 새로 할당

• VxLAN 확장이 필요 할 수 있음 ( http://www.ietf.org/id/draft-quinn-vxlan-

gpe-00.txt )

1. SFC 개요

L2 Header L3 Header(protocol=17)

UDP Header(port#=0xnsh-vxlan) VXLAN NSH

Svc Header(PT=0x6558)

Original L2-Frame

NSH + VXLAN using UDP port #

9Copyright ⓒ 2016 by NAIM Networks, Inc. All rights reserved.

VXLAN Generic Protocol Extension (a.k.a. eVXLAN)

• Cisco、Huawei、Intel、Microsoft 제안

• VXLAN을 확장

이더넷 이외의 프로토콜도 지원

• IPv4 (0x01), IPv6 (0x02), Ethernet (0x03), NSH (0x04)

• 8비트 사용 “Net Protocol”만 지원. 16비트 형식 프로콜인 경우 8비트에

적합한 코드화를 해야함

OAM 지원

Version 필드

1. SFC 개요

0 1 2 30 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+|R|R|R|R|I|P|R|O|Ver| Reserved |Next Protocol |+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+| VXLAN Network Identifier (VNI) | Reserved |+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

10Copyright ⓒ 2016 by NAIM Networks, Inc. All rights reserved.

NSH + NVGRE

• NVGRE는 Payload Type를 표시하는 프로토콜 필드 있음

NVGRE에서 이더넷은 0x6558로 정의

• NVGRE는 NSH Ethernet Type 지원

NSH Protocol Type은 본래의 Payload Type을 지원: IP or Ethernet

1. SFC 개요

L2 Header L3 Header(protocol=0x2F)

NVGRE Header(protocol=0xnsh)

Svc Header(PT=0x0800) Original IPv4 Packet

L2 Header L3 Header(protocol=0x2F)

NVGRE Header(protocol=0xnsh)

Svc Header(PT=0x6558) Original Ethernet Frame

11Copyright ⓒ 2016 by NAIM Networks, Inc. All rights reserved.

NSH + IP/UDP

• 오버레이 토폴로지가 아닌 경우 본래의 IP encapsulation을 사용 할 수 있음

1. SFC 개요

L2 Header L3 Header(protocol=17)

UDP Header(port#=nsh)

Svc Header(PT=0x6558) Original Ethernet Frame

L2 Header L3 Header(protocol=17)

UDP Header(port#=nsh)

Svc Header(PT=0x0800) Original IPv4 Packet

12Copyright ⓒ 2016 by NAIM Networks, Inc. All rights reserved.

NSH + MPLS

• Encapsulation 에서 MPLS packet 내의 Metadata 존재를 반드시 표시

• Generic Associated Channel (GAL) label [RFC5586] 에 의한 ’13’ 사용

• The GAL Label은 Packet에 Non-Service Payload가 이어지는 ”Metadata

Channel Header (MCH)”를 표시하는 방법을 제공

• [RFC5586]로 확장하여 첫번째 ACH의 Nibble에서 Metadata가 이어지는 것을

표시하는 0000b로 지정

1. SFC 개요

13Copyright ⓒ 2016 by NAIM Networks, Inc. All rights reserved.

1. 가상 방화벽/VPN/LB 설치 (3 Options) : • Single OVS @pServer , • Dual OVS @pServer , • Single OVS @vServer (nested VM)

2. vLink 설정3. Flow 설정

• Single OVS @pServer (as off-Ramp mode)• Dual OVS @pServer (as in-Line mode)• Single OVS @vServer (as off-Ramp mode of nested VM)

4. Tools• Install Remote Desktop• Install OVS• Install VirtualBox• Install pfSense• Install WireShark• Install PackETH

LAN1LAN3 LAN2LAN4 LAN1LAN3LAN4 LAN2

2. Assignment for Simple SFC

14Copyright ⓒ 2016 by NAIM Networks, Inc. All rights reserved.

3. SFC 응용 환경 Telecom 환경에서 SFC 기술 사용 가능 환경(예)

Backbone Edge AccessInternet

Regional DC Edge DC

버라이존(Verizon)

블루플래닛(blueplanet)

Central Local

15Copyright ⓒ 2016 by NAIM Networks, Inc. All rights reserved.Google 2015

에지클라우드

적용

중앙클라우드

적용

SFC 사용시 5G의 Use Case 별 KPI 고려

• 데이터센터 내에서 처리 가능한 서비스 (에지 클라우드)

• 데이터 플레인 분리/캐시 사용 테이블/마이크로 세그먼트 구조 바람직

3. SFC 응용 환경

16Copyright ⓒ 2016 by NAIM Networks, Inc. All rights reserved.

가상 L4-L7 서비스

Big Chain 스위치

지사 C지사 B지사 A

지사별서비스체인

지사별 가상 L4-L7 서비스 제어

NFV 매니저 메인데이터센터

Big Chain 컨트롤러

상용솔루션(예): Big Switch의 Big Chain 컨트롤러 사용 SFC

3. SFC 응용 환경

17Copyright ⓒ 2016 by NAIM Networks, Inc. All rights reserved.

Copyright ⓒ 2015 by NAIM Networks, Inc. All rights reserved.

[email protected]+82-2-552-05555th Floor, Anam BLDG616 Yeondongdaero, Kanamgu, Seoul, Republic of Korea