[softcon]sdn/iot 그리고 testbed
TRANSCRIPT
About me
•한상윤(Sangyun Han)
•경희대학교 컴퓨터공학과 Mobile Convergence Lab
•삼성 소프트웨어 멤버십 23-1기
•연구 및 관심 분야 : CCN, SDN/NFV, 5G Networking
Mobile Convergence Laboratory
Mobile Convergence Laboratory
출처 : http://www.itdaily.kr/news/articleView.html?idxno=72063
국내 SDN 시장 전망
Internet: The Beginning
• 1941년 진주만 공습• ENIAC
• 1960년대 미소 냉전시대• 핵전쟁 대비
• 안정적인 통신시스템 필요
Mobile Convergence Laboratory
Internet: The Beginning
Mobile Convergence Laboratory
Internet: The Beginning
•컴퓨터 네트워크
•패킷 교환망(Packet Switching)
• UC버클리, 스탠포드 등대학과 연구소에서 개발 착수
•이후 TCP/IP 개발
Mobile Convergence Laboratory
Mobile Convergence Laboratory
L1-L3 Forwarding
Mobile Convergence Laboratory
L1-L3 Forwarding
Mobile Convergence Laboratory
L1-L3 Forwarding
Mobile Convergence Laboratory
출처 : http://bradhedlund.s3.amazonaws.com/2011/openflow-scale/switch-control-data-planes.pngMobile Convergence Laboratory
출처 : http://bradhedlund.s3.amazonaws.com/2011/openflow-scale/switch-control-data-planes.pngMobile Convergence Laboratory
[Brain/Control Plane]행동을 위한 계산과 판단
(패킷 경로 설정, 제어 기능)
[Body/Data Plane]실제적인 행동
(패킷 송수신/Forwarding)
Mobile Convergence Laboratory
Mobile Convergence Laboratory
•정적인 네트워크 구조
•네트워크의 복잡성
•분산된 장치에 대한 재설정이 어려움
•폭발적으로 증가하는 기기의 수를 커버하기 어려움(IoT)
Mobile Convergence Laboratory
Mobile Convergence Laboratory
•네트워크를 소프트웨어와 같이 프로그램화하여 중앙에서 제어
• For Programmable Network
•유동적으로 서비스 상황에 따라 변화하기 용이한 네트워크
Mobile Convergence Laboratory
출처 : Mauricio Tsugawa Tutorial on Software Defined NetworkingMobile Convergence Laboratory
출처 : Mauricio Tsugawa Tutorial on Software Defined NetworkingMobile Convergence Laboratory
출처 : https://www.sdxcentral.com/wp-content/uploads/2015/03/sdn-architecture.pngMobile Convergence Laboratory
출처 :https://en.wikipedia.org/wiki/University_of_California,_Berkeleyhttps://en.wikipedia.org/wiki/Stanford_University
Mobile Convergence Laboratory
• Open Interface(API)
• SDN Controller와 OF스위치가 통신하기 위한 프로토콜
•중앙집중식 컨트롤러가 네트워크 장비를 제어 가능
Mobile Convergence Laboratory
Traditional Switch
Mobile Convergence Laboratory
Mobile Convergence Laboratory
Control PlaneController
Data PlaneNetwork Element(Switch)
SDN Controller
Mobile Convergence Laboratory
SDN Controller
Mobile Convergence Laboratory
SDN Controller
A BMobile Convergence Laboratory
SDN Controller
A BMobile Convergence Laboratory
Flow Table에 패킷에 대한 정보를 가지고 있는지 확인
SDN Controller
A BMobile Convergence Laboratory
모르는 패킷이 도착했어요!어떻게 해야되요?
[packet_in]
SDN Controller
A BMobile Convergence Laboratory
특정 App의 policyController 내부 규약
기준으로 판단[Computing]
Controller도 모르면?그냥 Packet Drop
SDN Controller
A BMobile Convergence Laboratory
각 스위치에 포워딩 정책 설정[packet_out/flow_mod]
각 스위치의 Forwarding Table 수정
SDN Controller
A BMobile Convergence Laboratory
수정된 정책에 따라 패킷 전송
Mobile Convergence Laboratory
Mobile Convergence Laboratory
Mobile Convergence Laboratory
SDN Controller
firewall
평상시엔 주소 변환 기능만 수행 (NAT/PAT)
Mobile Convergence Laboratory
SDN Controller
firewall
보안 문제발생
Mobile Convergence Laboratory
SDN Controller
firewall
Pi Stack SwitchRaspberry Pi를 이용한 SDN 테스트베드 개발
Mobile Convergence Laboratory
Raspberry Pi
•영국의 라즈베리파이 재단이 만든 교육용 싱글 보드 컴퓨터
• Single Board Computer
•대략 US$ 35
• Pi A/B, Pi B+, Pi2 출시
Mobile Convergence Laboratory
Raspberry Pi2의 스펙
• Single Board Computer(Micro Computer)
• CPU : 900MHz ARM Cortex-A7 쿼드코어
• RAM : 1GB
• USB 2.0 * 4 + HDMI * 1 + Micro USB전원
• 10/100 Mbit/s Ethernet
출처 : Wikipedia(wikipedia.org/wiki/Raspberry_Pi) Mobile Convergence Laboratory
Pi Stack Switch HW구성
Mobile Convergence Laboratory
Pi Stack Switch HW구성
메인 스위치 x 1개 x 1포트+
서브 스위치 x 3개 x 3포트= 10포트 스위치
Mobile Convergence Laboratory
Pi Stack Switch 완성
Mobile Convergence Laboratory
Software
Mobile Convergence Laboratory
SystemArchitecture
Main-Switch
Sub-Switch
Mobile Convergence Laboratory
Pi Stack Switch - Install
• OpenvSwitch 설치
$ sudo apt-get install openvswitch-switch openvswitch-controller openvswitch-common
$ sudo ovs-vsctl add-br <BridgeName>
$ sudo ovs-vsctl add-port <BridgeName> eth_n
$ sudo ovs-vsctl set-controller <BridgeName> tcp:Ctrl_IP:6633
https://github.com/MobileConvergenceLab/pi-switch
Mobile Convergence Laboratory
출처 : https://www.sdxcentral.com/wp-content/uploads/2015/03/sdn-architecture.pngMobile Convergence Laboratory
출처 : https://www.sdxcentral.com/wp-content/uploads/2015/03/sdn-architecture.pngMobile Convergence Laboratory
Pi Stack Switch와 Controller 연결
메인 스위치
서브 스위치1
서브 스위치2
서브 스위치3
Mobile Convergence Laboratory
IoT와 테스트베드Raspberry Pi로 AP 만들기
Mobile Convergence Laboratory
Mobile Convergence Laboratory
Mobile Convergence Laboratory
Mobile Convergence Laboratory
Mobile Convergence Laboratory
Mobile Convergence Laboratory
Mobile Convergence Laboratory
Mobile Convergence Laboratory
Mobile Convergence Laboratory
Mobile Convergence Laboratory
Pi based WiFi APRaspberry Pi를 이용한 IoT 테스트베드 개발
Mobile Convergence Laboratory
OpenWrt와 Raspberry Pi2로 AP 만들기
• OpenWrt• 무선랜 라우터를 위한 오픈소스 OS• 라우터에 리눅스의 기능들을 패키지 형태로 제공• DHCP, 방화벽, 무선 보안 기능 등
• 준비물• Raspberry Pi2• WiFi USB 동글• OpenWrt 이미지와 SD 카드
• https://github.com/MobileConvergenceLab/pi-wifiap
Mobile Convergence Laboratory
Mobile Convergence Laboratory출처: http://www.ziksir.com/ziksir/view/1147
Q&A
Mobile Convergence Laboratory