고
품
격
미
래
인
터
넷
을
위
한
식
별
자
기
반
네
트
워
킹
기
술
연
구
2015년 12월 15ZI1210-03-3022P
[최종연구보고서]
고품격 미래인터넷을 위한
식별자 기반 네트워킹 기술연구
Research on high quality future Internet based on identifier
2
0
1
5
·
12
한
국
전
자
통
신
연
2015 년 12월 15ZI1210-03-3022P
20
고품격 미래인터넷을 위한
식별자 기반 네트워킹 기술연구
인 사 말 씀
최근 우리나라는 경제의 글로벌화, 삶의 스타일의 다변화, IT 기술의 급속한 발전과 확산, 환경 보존과 주요 산업자원의 고갈 문제 등으로 인하여 유래 없는 경제, 사회문화, 기술 환경 의 변화를 겪고 있습니다. 이러한 메가트렌드들은 앞으로도 사람들의 생활 방식과 사회 구조 를 지속적으로 변화시켜서 미래의 우리 일상은 IT 기반으로 재구축되는 사회시스템을 기반으 로 모바일 라이프의 추구, 기능과 성능에 이어 감성을 중시하고, 일상 속에 미디어 소비 및 창조가 녹아드는 삶, 에너지 소비를 획기적으로 줄이고 환경 보존을 중시하는 형태로 변화될 것으로 전망됩니다. 이러한 급격한 변화의 시대를 맞아 인류의 삶의 변화를 근본적으로 바꾸는 메가트렌드를 분석하여 미래 사회에서 요구되는 새로운 기술 수요를 파악함으로써, 경쟁력 있는 국가 산업 영역을 새롭게 정립하고, 미래 신기술 산업을 창출하기 위한 기술 혁신과 신산업의 올바른 방 향성 정립이 시급하게 요구되고 있습니다. 미래 인터넷 기술은 이러한 변화의 시대에 기술 패 러다임의 전환과 혁신을 통하여 미래 신산업을 창출하는 국가 신 성장 동력 창출의 씨앗 기 술로서, 지속적인 연구개발 투자가 요구되고 있습니다. 그러나, 정부 조직내 방송통신 연구개 발 기능의 분산, 단기적 성과 중심의 연구개발 정책 변화 등으로 인하여 미래 인터넷 연구 개 발 투자가 위축되고 있습니다. 이러한 미래기술 수요 및 국가 연구개발 환경 변화에 능동적으로 대처하기 위하여 식별자 기반 미래인터넷 연구를 수행하였습니다. 미래에 필요하게 될 기술이 어떻게 발전해 갈 것이 며, 이러한 기술 예측을 기반으로 한 길목 기술을 확보하는 것은 국가 기술 경쟁력을 확보하 는 데 아주 중요합니다. 본 연구에서 제시한 식별자 기반의 미래 인터넷 기술을 산업화로 연 계시킴으로써 국가 정보통신 발전의 초석이 될 수 있도록 많은 관심을 가지고 지속적으로 노 력하여 주시길 바랍니다. 모쪼록 식별자 기반 미래인터넷 기술이 산업화로 연계되어 국가 정 보 통신 발전의 초석이 되기를 희망하며, 그 동안 연구 개발에 몰두하여온 연구원들의 노고에 감사를 드립니다.2015 년 12 월
한국전자통신연구원 원장 김 흥 남
제 출 문
본 연구보고서는 주요사업인 "고품격 미래인터넷을 위한 식별자 기반
네트워킹 기술연구"의 결과로서, 본 과제에 참여한 아래의 연구팀이 작성한
것입니다.
2015년 12월
사업책임자 : 정현규(ETRI 통신인터넷연구소)
연구책임자 : 정희영(ETRI 유무선통신인프라연구부)
연구책임자: 책임연구원 정희영(ETRI 통신인터넷연구소 유무선통신인프라연구부) 연구참여자: 책임연구원 김정환(ETRI 통신인터넷연구소 유무선통신인프라연구부) 연구참여자: 책임연구원 곽병옥(ETRI 통신인터넷연구소 유무선통신인프라연구부) 연구참여자: 선임연구원 전해숙(ETRI 통신인터넷연구소 유무선통신인프라연구부) 연구참여자: 선임연구원 이주철(ETRI 통신인터넷연구소 유무선통신인프라연구부) 연구참여자: 선임연구원 은지숙(ETRI 통신인터넷연구소 유무선통신인프라연구부) 연구참여자: 선임연구원 홍정하(ETRI 통신인터넷연구소 유무선통신인프라연구부) 연구참여자: 선임연구원 임완선(ETRI 통신인터넷연구소 유무선통신인프라연구부) 연구참여자: 초빙연구원 유태완(ETRI 통신인터넷연구소 유무선통신인프라연구부) 연구참여자: 연구원 김태환(ETRI 통신인터넷연구소 유무선통신인프라연구부) 연구참여자: 연구원 허신영(ETRI 통신인터넷연구소 유무선통신인프라연구부)
요 약 문
Ⅰ. 제 목 고품격 미래인터넷을 위한 식별자 기반 네트워킹 기술연구 Ⅱ. 연구목적 및 중요성 최근 5G, IoT, ICN 과 같은 새로운 네트워크 시스템은 기존 IP 네트워킹이 제공하는 능력 이상을 요구하고 있으며, 이러한 요구사항을 만족하기 위해서 새로운 네트워킹 기술들이 제 안되어 오고 있다. 새로운 네트워킹 요구를 만족하기 위한 바람직한 접근 방법은 기존 IP 네트워킹이 가지 는 구조적인 제약을 극복하는 것이라 할 수 있다. 본 과제에서는 IP 기술의 의미적 중복성에 의해 기인되었던 문제들을 구조적으로 해결할 수 있도록 통신 대상을 위치나 메커니즘과 독립시킬 수 있는 식별자 기반의 네트워킹 개념을 채택하였다. 하지만, 기존의 식별자 기반 의 네트워킹은 미래 네트워킹 요구사항들에 대해 부분적인 측면만을 만족시킨다고 볼 수 있다. 따라서, 본 과제에서는 다양한 미래 네트워킹 요구사항들을 만족시킬 수 있는 새로운 식별자 기반의 네트워킹 구조를 제시하였고, 규모성, 이동성, 신뢰성 등을 제공할 수 있는 라우팅, 포워딩, 매핑 시스템, 응용 API 메커니즘을 개발하였다. Ⅲ. 연구내용 및 범위 □ 1차년도(2013) : 식별자 기반 네트워킹 구조 및 동일 도메인 지원 브릿지 연구 o 식별자 기반 네트워킹 기술 분석 및 구조 연구 o 이더넷 기반 도메인 내에서 MAC 주소를 식별자로 사용하는 도메인 브릿지 설계 및 구현 o 식별자 기반 네트워킹 기술 국제 표준화 및 국제 공동연구 추진 □ 2차년도(2014) : 식별자 기반 네트워킹 게이트웨이 연구시제품 구현 및 신뢰통신 구조 연구 o 식별자 기반 네트워킹을 위한 게이트웨이 연구시제품 설계 및 구현o 신뢰통신 기술 분석 및 기본 구조 설계 o 식별자 기반 네트워킹 국제 표준화 및 국제 공동연구 □ 3차년도(2015) : 자기 인증 식별자 기반 신뢰통신 통합 구조 및 시스템 연구 o 자기인증 식별자 기반 신뢰통신 게이트웨이 프로토타입 설계 및 구현 o Use case를 통한 식별자 기반 네트워킹 확장 기능 설계 및 개발 o 블룸필터 기반의 매핑 시스템 구현 o 식별자 기반 네트워킹 국제 표준화 및 국제 공동연구 Ⅳ. 연구결과 □ 1차년도(2013) o Recursive 구조를 가지는 멀티계층 식별자 기반 네트워킹 구조 설계 o 규모성을 지원하는 ID 기반 라우팅/포워딩 메커니즘 설계 o 계층적인 블룸필터 기반의 매핑시스템 설계 o 메커니즘 분리형 식별자 기반 API 설계 o NS-3 기반의 식별자 기반 네트워크 시뮬레이션 모델 개발 및 개념 검증 o Routing Bridge에 식별자 기반 기술 적용 검증 o 미국 CMU (XIA 프로젝트 그룹)와의 국제 공동연구 추진(2013.7.1 ~) o EU FP7 SmartFire 국제 공동연구 프로젝트 참여(2013.11~) □ 2차년도(2014) o 식별자 기반 네트워킹을 위한 게이트웨이 설계 및 구현 - ID기반 네트워킹을 위한 게이트웨이 (라우팅, 포워딩) - ID기반 API - ID앱/서버 o Bloom Filter 기반 매핑 시스템 상세 설계 o 게이트웨이 동작 검증 - Client/Server mobility - Link fail 시 경로 재설정
o 자기인증식별자 기반 신뢰통신 개념 설계 o IRTF ICNRG 국제 표준화 기고 6건
o 미국 CMU (XIA 프로젝트 그룹)와의 국제 공동연구 수행 (~ 2014.12.31) o EU FP7 SmartFire 국제 공동연구 프로젝트 수행
o 일본 NICT, 스위스 ETH 등과 국제협력 추진 및 Horizon 2020 국제공동연구 제안
□ 3차년도(2015) o 자기인증 식별자 기반 신뢰통신 게이트웨이 설계 및 구현 o 신뢰통신 응용 시나리오, ID 브라우저, Openstack기반 가상화 테스트베드 등 식별자 기반 네트워킹 확장 기능 설계 및 개발 o GPU 기반의 블룸필터 기반의 매핑 시스템 구현, 성능분석 및 시연 o IRTF ICNRG 국제 표준화 기고 3건 및 NRS 에디터쉽 확보 o EU FP7 SmartFire 국제 공동연구 프로젝트 수행 및 EU ICT 2015 전시 Ⅴ. 연구개발결과의 활용계획 □ IoT 기술 분야 적용
o 현재 IoT는 Intranet of Things 수준에 머무르고 있음
o 다양한 thing 및 네트워크 환경을 지원이 가능한 ID 기반의 인터네트워킹 기술에 대 한 요구 o IoT 환경에서의 인터네트워킹 기술로 IoE 융합연구단 과제에 활용 □ 차세대 국방망 분야 o IP가 가지는 이동성, 보안, 다양성 지원 문제 해결 가능 o ID기반의 차세대 국방망에 대해 육군본부와 과제화 협의 중 □ ICN 분야 o ICN의 위치 독립성 및 규모성 이슈 해결 o 라우팅, 포워딩, API 기술을 ICN 기술 이슈 해결방안으로 국제표준화 지속 추진중 □ RBridige 기반의 5G 코어네트워크
o 5G 요구사항 (데이터 트래픽 폭증, 디바이스 규모성, 저지연)을 만족하는 새로운 네 트워킹 기술에 대한 요구 o 2계층 기술 기반의 분산 구조 5G 코어 기술 제안 (RB-Core) 및 적용방안 추진중 Ⅵ. 기대성과 및 건의 이동 및 멀티호밍 환경 등으로 인하여 네트워크 환경이 빠른 속도로 식별자 기반으로 바 뀌어 가고 있으며 현재 주소기반 인터넷 기술은 이를 프로토콜 추가를 통해 해결하고 있으 나 (patch-on 방식) 곧 한계에 다다를 것으로 예상되며, 본 과제에서 수행된 식별자 기반 통 신은 이러한 한계점을 근본적, 구조적으로 해결할 수 있는 대안이 될 것으로 기대된다. 본 과제는 현 인터넷과 같은 IP 주소가 아닌 위치 정보를 포함하지 않는 식별자를 기반 으로 규모성을 지원하면서 포워딩 및 라우팅을 가능하게 하는 기술을 개발하는 혁신적인 기술 개발을 수행하였다. 또한, 현 인터넷과 같이 모든 패킷들을 검사하는 기존의 보안강화 방식이 아닌 통신 객체들이 속한 도메인들을 기반으로 한 신뢰 통신을 제공함으로써 다양 한 보안 위협에 효율적으로 대응할 수 있는 안전한 통신 환경을 실현할 수 있다. 또, 본 과제에서 다양한 use case 들을 통해 새로운 통신 기술에 대한 요구를 충족할 수 있음을 보였으며, 이러한 핵심 기술을 기반으로 다양한 도메인에 확대 적용가능하길 기대해 본다.
ABSTRACT
Ⅰ. TITLEResearch on high quality future Internet network based on identifier
Ⅱ. THE OBJECTIVES
Recently, new network systems have begun to emerge (for instance, 5G, IoT, and ICN) that require capabilities beyond that provided by existing IP networking. To fulfill the requirements, some new networking technologies are being proposed. The promising approach of the new networking technology is to try to overcome the architectural limitations of IP networking by adopting an identifier (ID)-based networking concept in which communication objects are identified independently from a specific location and mechanism. However, we note that existing ID-based networking proposals only partially meet the requirements of emerging and future networks.
This project proposes a new ID-based networking architecture and mechanisms, named IDNet, to meet all of the requirements of emerging and future networks. IDNet is designed with four major functional blocks — routing, forwarding, mapping system, and application interface.
Ⅲ. THE CONTENTS AND SCOPE OF THE STUDY
□ 1st year (2013) : ID based Networking Architecture and Domain Bridge Implementation
o ID based networking STOA analysis and architectural design
o Domain bridge design and implementation in the Ethernet-based domain using MAC address as an ID
o Establishment of the global standardization and international joint research
□ 2nd year (2014) : Prototype implementation of the ID based networking gateway and the
o Design and the prototype implementation of ID based networking gateway o Analysis of trust communication technologies and fundamental design o Global standardization and international joint research
□ 3rd year (2015) : Self-certified ID based trust communication design and implementation
o Prototype implementation of Self-certified ID based trust communication gateway o Development of the use cases and enhancement of ID based networking
o The implementation of bloom filter based mapping system o Global standardization and international joint research
Ⅳ. RESULTS
□ 1st year (2013)
o Multi-layering ID-based networking architecture having a recursive structure o ID-based routing and forwarding mechanism design supporting the scalability o Design of the hierarchical BF-based mapping system
o Design of the mechanism-independent ID-based API
o NS-3 simulation model development and its verification o Implementation of ID-based Routing Bridge
o Joint research establishment with CMU (XIA project group in US) (2013.7.1 ~) o Participation to EU FP7 SmartFire project(2013.11~)
□ 2nd year (2014)
o Design and the prototype implementation of ID based networking gateway - ID-based networking gateway (Routing, Forwarding)
- ID-based API
- ID-based Android app and its server
o Detailed design of bloom filter based mapping system o Test and verification of the ID-based networking gateway
- path re-setup when link fail
o Conceptual design of self-certified trust communication o submissions to IRTF ICNRG working group : 6 contribution
o Joint research with CMU (XIA project group in US) (~ 2014.12.31) o Joint research in EU FP7 SmartFire project
o Promotion of the co-working with international institutes (NICT in Japan, ETH in Swiss) and proposal submission for Horizon 2020
□ 3rd year (2015)
o Prototype implementation of Self-certified ID based trust communication gateway o Use case development and enhancement of the implementation for trust communication,
ID-based browser,openstack-based virtualized testbed
o Implementation, Performance Verification and demonstration of the BF-based mapping system using GPU
o submissions to IRTF ICNRG working group and achievement of NRS editorship o Joint research in EU FP7 SmartFire project and demonstration in EU ICT 2015
Ⅴ. FUTURE PLAN OF RESULTS
□ Application to IoT domain
o Strong need to be INTERNET of things, not Intranet of Things
o Needs to enable the ID-based internetworking among the heterogeneous things’ o Proposal promotion as an internetworking enabler in the IoT environment
□ Application to national defense network
o Needs for the solution for IP mobility, IP security and device heterogeneity o In communication with Army Headquarters for the ID-based national defense network
□ Application to ICN
o As an alternative solution for the location independency and scalability of ICN o In contribution to ICNRG group with subjects like routing, API etc.
□ RBridige-based 5G core network
o Novel networking needs in 5G to support traffic explosion, innumerous devices, ultra low latency)
o 2-tier distributed 5G core proposal(RB-Core) is in progress
Ⅵ. EXPECTED RESULT & PROPOSITION
ID based communication will be expected to an alternative architecture to overcome the fundamental limitation of the current IP networking which evolved through the patch-on solutions. Based on the architectural principle of ID Locator separation, the ID based communication supports several novel features like mobility, scalability, evolvability, trust communication in nature.
This project has designed and implemented the ID-based communication architecture and novel mechanisms like routing and forwarding based on the recursive domain concept, bloom filter-based ID Locator mapping system providing fast ID resolution and scalability, delivery mechanism independent API and trust communication enabling path setup based on confidence level. ID based trust communication provides more secure communication environment not by inspecting packets in traverse but by realizing protection of communication hosts in a domain.
In addition, several use cases based on the new architectural concept and its mechanisms have been shown to verify that our assertions are feasible and meet the new emerging networking requirements.
목 차
제 1 장 서 론 ... 17 제 1 절 연구개발 목표 ... 17 제 2 절 연구개발 범위 및 내용 ... 18 제 3 절 연구개발 수행 체계 ... 22 제 2 장 연구개발 내용 ... 27 제 1 절 1 차년도 연구 내용 및 결과 ... 27 제 2 절 2 차년도 연구 내용 및 결과 ... 46 제 3 절 3 차년도 연구 내용 및 결과 ...102 제 4 절 연구결과물 목록 ...148 제 3 장 연구개발 글로벌화 ...159 제 1 절 국제 표준화 ...159 제 2 절 국제 공동연구 ...163 제 4 장 연구개발 결과의 활용계획 ...179 제 1 절 성과 활용 방안 및 계획 ...179 제 2 절 기대효과 ...182 제 5 장 결론 ...187그 림 목 차
그림 1 : 식별자 기반 통신 개념도 ... 17 그림 2 : 연구개발 추진체계 ... 22 그림 3 : 연구개발 수행 방법 ... 24 그림 4 : 미래인터넷 기술 비교 ... 27 그림 5 : 미래인터넷 구조 연구들의 평가 ... 28 그림 6 : NS-3 기반 모델 개발 구조 ... 34 그림 7 : NS-3 식별자 기반 통신 모듈 구조 ... 35 그림 8 : 라우팅 테이블 생성과정 ... 36 그림 9 : 라우팅 프로토콜 클래스 구조 ... 36 그림 10 : 포워딩 캐쉬 생성 과정 ... 37 그림 11 : 포워딩 캐쉬 구조 ... 37 그림 12 : ILMS 서버 동작 과정 ... 38 그림 13 : 식별자 기반 통신에서의 패킷 전송 과정 ... 38 그림 14 : S-RBridge 개발 모델 ... 39 그림 15 : S-RBridge 동작 개념도 ... 40 그림 16 : Path inquiry 시나리오 ... 42 그림 17 : 경로 설정 (Path setup) 시나리오 ... 42 그림 18 : S-RBridge 형상 ... 43 그림 19 : STP 네트워크 시험환경 ... 44 그림 20 : 트래픽 발생전후 수신 트래픽 ... 44 그림 21 : S-RBridge 네트워크 시험환경 ... 45 그림 22 : 트래픽 발생 전후 수신 트래픽 ... 45 그림 23 : 호스트 entry 지원 갯수 시험 환경 ... 45그림 24 : 호스트 entry 개수 확인 및 호스트 entry cache 추가 화면 ... 46
그림 25 : ID 통신 전체 시스템 구성도 ... 47
그림 26 : Path setup & ID packet delivery 절차 ... 48
그림 27 : ID 통신에서의 Entity mobility 절차 ... 49 그림 28 : IDGW 시스템 구성도 ... 50 그림 29 : 라우팅 모듈 기능 구조 ... 51 그림 30 : 라우팅 모듈 기능 블록 ... 53 그림 31 : 포워딩 모듈 절차 ... 56 그림 32 : ID 포워딩 구현 구조 ... 57 그림 33 : 계층 수에 따른 평균 토플로지 그래프 크기 ... 59 그림 34 : 계층 수에 따른 메시지 오버헤드 ... 60 그림 35 : 계층 수에 따른 최장경로의 홉 수 ... 60 그림 36 : 계층수에 따른 라우팅 스트레치 ... 61 그림 37 : API 모듈 상세 설계 ... 62 그림 38 : API 제공 절차도 ... 63
그림 39 : 수신자 중심의 전송 제어 ... 65
그림 40 : iPlug, dSocket, dSocket Manager 의 클래스 다이어그램 ... 66
그림 41 : iPlug/dSocket 의 동적 바인딩 및 패킷 송수신 프로세스 ... 67
그림 42 : CLI 소프트웨어 구조도 ... 67
그림 43 : CLI 동작 절차 ... 68
그림 44 : CLI 의 idcache 테이블 보기와 rttable 테이블 보기 ... 69
그림 45 : 시험망 R3 게이트웨이의 모든 슬랏에 해당하는 카운터 정보 보기 ... 69 그림 46 : 시험망 R3 게이트웨이의 idcache 와 디바이스 리스트를 핸들러 정보를 통해서 보기 ... 70 그림 47 : ILMS 구조 ... 71 그림 48 : ILMS 서버 구성도 ... 72 그림 49 : ILMS 기능 흐름도 ... 73 그림 50 : ILMS 서버 구현 ... 75 그림 51 : lookup 당 액세스하는 ILMS 서버의 평균 수... 76 그림 52 : 실험 환경 구성도 ... 78 그림 53 : 실험 환경 실제 사진 ... 78 그림 54 : C1 에 있는 컨텐츠 서버가 구동을 하고 컨텐츠들을 Plugin 하는 과정 ... 80
그림 55 : 게이트웨이 R4 영역에 있는 Client App Plugin 하는 과정 ... 80
그림 56 : R4 에 연결된 Client APP 의 192 번 데이터 요청에 의한 Path Setup ... 81
그림 57 : 정상 패킷 송수신 중, CLI 상태 ... 81
그림 58 : 정상 패킷 송수신 중, 시험 망 게이트웨이 상태 ... 82
그림 59 : R1 게이트웨이의 ETH4 Link Failure 발생 ... 82
그림 60 : R1 이 ID 192 에 대한 대체 경로를 잡고 R2 는 관련 idcache 정보 새로 추가 ... 83
그림 61 : R1->R3 링크 실패후, R1->R2->R3 대체 경로를 설정하고 패킷 송수신 계속 진행... 83
그림 62 : ILMS ID 등록 테이블 ... 84
그림 63 : Client 가 연결된 R4, Client 가 이동할 R5 그리고 컨텐츠서버 R7 CLI 상태 ... 85
그림 64 : Client 의 Path Setup 요청 메시지 ... 85
그림 65 : R4 에 연결된 Client 와 서버 R7 간의 패킷 송수신... 86
그림 66 : R4 의 AP Off 하고 ILMS 는 App 을 이전 LOC 를 삭제하고 새로운 LOC 로 등록 ... 86
그림 67 : 수정된 R5 CLI idcache 와 R5 에 App 이 Plugin 하고 데이터 요청 ... 87
그림 68 : 클라이언트 이동 후, 패킷 송수신 상태 ... 87 그림 69 : ID 기반 컨텐츠 브라우징 응용 App 및 컨텐츠 서버 구조 ... 88 그림 70 : ID 기반 컨텐츠 브라우징 / 스트리밍 기본 처리 결과 ... 89 그림 71 : 클라이언트 모빌리티 시험 ... 90 그림 72 : 이동성 시험 결과 ... 90 그림 73 : Source Relocation 시험... 91 그림 74 : Source Relocation 시험 결과 ... 92 그림 75 : Multiple copy 시험 결과 ... 93 그림 76 : link failure 시험 ... 93 그림 77 : link 단절시 경로 우회 시험 ... 94 그림 78 : link 단절시 다른 위치로 연결 재설정 ... 95 그림 79 : 식별자 기반 네트워크의 신뢰통신을 위한 요구사항 도출 ... 97 그림 80 : 신뢰통신 기본구조 설계 ... 98
그림 81 : 신뢰통신 프레임워크 ... 98 그림 82 : 도메인 등록 프로세스 ... 99 그림 83 : 도메인 내의 신뢰통신 ... 100 그림 84 : 도메인 간의 신뢰통신 ... 100 그림 85 : 신뢰채널 구축... 101 그림 86 : 라우터의 confidence 측정방법 ... 102 그림 87 : 신뢰경로설정 과정 ... 103 그림 88 : Accountable Chaining 수행과정 ... 104 그림 89 : 자가인증식별자의 기능과 의의 ... 105 그림 90 : 인증모듈 구조... 106 그림 91 : 인증모듈 상세... 106 그림 92 : 인증 프로토콜 절차 ... 107 그림 93 : 포워딩 모듈 기능 블럭도... 108 그림 94 : 신뢰경로설정모듈 정적 구조 다이어그램 ... 110 그림 95 : 신뢰경로설정모듈 Click 구현구조 ... 112 그림 96 : 경로분석 모듈 설계 ... 113 그림 97 : 경로분석 기능 흐름도 ... 114 그림 98 : Network Visualizer 구현 기술 및 연동 구조 ... 117 그림 99 : 모니터링 서버 (좌) 와 Network Visualizer (우) ... 117 그림 100 : delegated key 기반 인증 검증 ... 118 그림 101 : 인증 프로토콜 기반 인증 검증 ... 119 그림 102 : 구조적 토폴로지 구성 예시 ... 120 그림 103 : 게이트웨이 구성 예시 ... 120 그림 104 : 게이트웨이의 기능별 블록 ... 121 그림 105 : Hello 메시지 교환 예시... 121 그림 106 : LSA flooding 예시 ... 122 그림 107 : 라우팅 프로토콜 프로그램 구조 ... 123 그림 108 : Class definitions ... 124
그림 109 : Paired gates for domains A, B ... 125
그림 110 : 라우팅 프로그램 구동화면 ... 127 그림 111 : 실험 환경 토폴로지 ... 127 그림 112 : 제안 라우팅 기반의 토폴로지 ... 128 그림 113 : LSA 필터링이 적용되지 않은 라우팅 기반의 토폴로지 ... 128 그림 114 : 테스트베드 구성도 ... 130 그림 115 : 신뢰경로메트릭 측정 ... 130 그림 116 : 최단경로 기반 경로설정(좌)과 신뢰경로메트릭 기반 경로설정(우) ... 131 그림 117 : Delegated Key 기반 위조 공격 대응(좌)과 인증 프로토콜 기반 위조 공격 방어(우) ... 131 그림 118 : 서비스 거부 공격 대응 ... 132 그림 119 : ID 기반 웹 브라우저와 서버 플랫폼 구조 ... 132 그림 120 : ID 기반 컨탠츠 등록 ... 134 그림 121 : 웹 서버 기능 2 : ID 기반 파일 정보 전달 기능과 데이터 전송 ... 134 그림 122 : ID 기반 호스트 웹 브라우징-캐싱 기능 ... 135
그림 123 : ID 캐싱 : 호스트 로컬 디렉토리 상태 변화 ... 135 그림 124 : ID 캐싱 : IDGW 와 ILMS 상태 변화 ... 136 그림 125 : ID 플러그인 : ID 등록 그리고 ID 캐싱 ... 136 그림 126 : ID 웹 브라우징 : 안드로이드폰 이미지와 비디오 예제 ... 137 그림 127 : ID 웹 브라우징 : 데스크 탑 이미지, 비디오 그리고 HTML 소스 예제 ... 137 그림 128 : ILMS 구조 ... 138 그림 129 : 블룸필터 GPU 등록 및 검색 동작과정 ... 139 그림 130 : ILMS 서버의 클래스 다이어그램 ... 142 그림 131 : ILMS 테스트베드 구성 ... 143 그림 132 : ILMS 검색 성능테스트 구성 ... 144 그림 133 : ILMS 성능 분석 - CPU... 144 그림 134 : ILMS 성능 분석 - GPU ... 145 그림 135 : 1000 개의 lookup 시간 측정... 145
그림 136 : ACM ICN 2015 Demo 테스트베드 구성 ... 162
그림 137 : ACM ICM 2015 Demo ... 162
그림 138 : 공동연구 수행체계 ... 164
그림 139 : 양 기관의 식별자기반 통신 구조의 유사점 및 차이점 ... 165
그림 140 : 이동성 지원 프로토콜 흐름 설계 ... 165
그림 141 : UDP session setup 지연 시간 비교 ... 166
그림 142 : ETRI 와 UMU 간 VLAN 을 통한 L2 circuit 연결 ... 169
그림 143 : SmartFire 국제 공동연구를 위한 ETRI 네트워크 구성도 ... 169
그림 144 : ETRI-UMU 간 식별자기반 네트워크 구조 테스트베드 구성 ... 170
그림 145 : Host ID network based Multi-Screen 시나리오 구성도 ... 171
그림 146 : Host ID network based Multi-Screen 테스트베드 ... 171
그림 147 : ETRI-UMU 간 SFA/OMF 기반의 MOFI 테스트베드 ... 173
그림 148 : ETRI-UMU 간 MOFI 구조 기반의 이동성 시나리오 ... 174 그림 149 : MOFI 구조 기반의 multi-screen 시나리오 ... 175 그림 150 : 식별자기반 통신 기술의 적용 분야 ... 179 그림 151 : 식별자 통신 기반 사물인터넷 네트워킹 구조 ... 180 그림 152 : 호스트 식별자 통신 기반의 국방망 적용 예 ... 181 그림 153 : RB-Core 네트워크 구조 ... 182
제 1 장 서 론
제 1 절 연구개발 목표
□ 최종 목표 o 현 인터넷의 주소 기반 통신의 한계성을 근본적으로 극복하는 식별자 기반의 네트워크 구조 및 요소 기술 개발 o 식별자 기반 네트워크 요소기술에 대한 지적재산권 확보, 국제 표준화 및 연구시제품 개발을 통해 차세대 인터넷 시장 선점 □ 세부 목표 o 식별자 기반 통신 핵심 요소 기술 연구 및 식별자 네트워킹 구현을 위한 장비 연구시제품 개발 ·식별자 기반 네트워킹 구조 및 동일 도메인 지원 브릿지 연구 ·식별자 기반 네트워킹을 위한 게이트웨이 연구시제품 구현 및 신뢰통신 구조 연구 ·식별자 기반 통신 확장 기능 설계 및 프로토타입 구현 o 식별자 기반 네트워크 요소 기술의 지적재산권 확보, 국제 표준화 및 국제 협력/ 공동연구를 통한 글로벌 기술화 그림 1 : 식별자 기반 통신 개념도□ 식별자 기반 통신 기술의 특징
o 다양한 물리적 네트워크에 독립적인 논리적 도메인 간 통신으로의 패러다임 진화를 통해 네트워크 다양성 및 진화성 제공 (현 인터넷의 Narrow Waist 한계성 극복)
o 자기인증 식별자(SCID: Self-certifying ID) 및 신뢰도메인 구성을 통해 신뢰통신 제공 (현 인터넷의 보안성 해결) o 식별자 기반의 새로운 인터페이스 제공을 통해 다양한 서비스를 유연하게 지원 (현 인터넷의 TCP/IP 기반 소켓 한계성 극복)
제 2 절 연구개발 범위 및 내용
1. 총괄연도 연구 범위
□ 1차년도(2013) : 식별자 기반 네트워킹 구조 및 동일 도메인 지원 브릿지 연구 o 식별자 기반 네트워킹 기술 분석 및 구조 연구 o 이더넷 기반 도메인 내에서 MAC 주소를 식별자로 사용하는 도메인 브릿지 설계 및 구현 o 식별자 기반 네트워킹 기술 국제 표준화 및 국제 공동연구 추진 □ 2차년도(2014) : 식별자 기반 네트워킹 게이트웨이 연구시제품 구현 및 신뢰통신 구조 연구 o 식별자 기반 네트워킹을 위한 게이트웨이 연구시제품 설계 및 구현 o 신뢰통신 기술 분석 및 기본 구조 설계 o 식별자 기반 네트워킹 국제 표준화 및 국제 공동연구 □ 3차년도(2015) : 자기 인증 식별자 기반 신뢰통신 통합 구조 및 시스템 연구 o 자기인증 식별자 기반 신뢰통신 게이트웨이 프로토타입 설계 및 구현 o Use case를 통한 식별자 기반 네트워킹 확장 기능 설계 및 개발 o 블룸필터 기반의 매핑 시스템 구현 o 식별자 기반 네트워킹 국제 표준화 및 국제 공동연구2. 1차년도 연구 내용 및 범위
□ 1 차년도 (2013) : 식별자 기반 네트워킹 구조 및 라우팅 브리지 적용 연구 o 식별자 기반 네트워킹 기술 분석 및 구조 연구 - 다양한 계층에서의 식별자 체계 분석 - 식별자 기반 네트워킹 국내외 연구 동향 분석 - 식별자 기반 네트워킹 서비스 시나리오 분석 및 요구사항 개발- 진화성 (Evolvability), 보안성 (Security), 규모성(Scalability)을 지원하는 식별자 기반 네트워킹 구조 개발 - 각 네트워킹 메커니즘에 독립적인 식별자 기반 라우팅/포워딩 기술 개발 - 패킷 전달을 위한 위치 정보 검색을 위한 식별자-위치 매핑 시스템 개발 - 다수의 이종 도메인을 지원하는 연동 네트워킹 기술 - NS-3 를 이용한 시뮬레이션 모델 구축 및 성능 분석 o 이더넷 기반 도메인 (데이터 센터, 캠퍼스 네트워크 등) 내에서 MAC 주소를 식별자로 사용하는 도메인 브리지 설계 및 구현 - 기존 이더넷 브리지 제어 프로그램 분석
- 기존 2 계층 네트워크에서 사용되는 STP(Spanning Tree Protocol) 대체를 위한 도메인 브리지간 경로 프로토콜 개발 - 캠퍼스 및 엔터프라이즈 급 Big-subnetting 구성 기술 개발 - 네트워크 내 2 계층 도메인간 심리스 통신 기술 개발 - Non-broadcast 경로 설정 프로토콜 개발 - 이웃 발견(Neighbor Discovery) 프로토콜을 이용한 이더넷자율 도메인설정 기능 개발 - 이더넷 시험망을 통한 기능 검증 o 식별자 기반 네트워킹 기술 국제 표준화 및 국제 공동연구 추진 - 미국 CMU 와 식별자 기반 통신 국제 공동 연구 추진 - 유럽 FP7 및 Horizon-2020 에 식별자 기반 통신 관련 기술 연구를 유럽과 공동 제안 - IETF/IRTF 등을 통한 국제 표준화 동향 분석 및 국제 표준화 항목 발굴
3. 2차년도 연구 내용 및 범위
□ 2 차년도 (2014) : 식별자 기반 네트워킹 게이트웨이 연구시제품 구현 및 신뢰통신 구조 연구 o 식별자 기반 네트워킹을 위한 게이트웨이 연구시제품 설계 및 구현 - 도메인 기반의 라우팅 정보 필터링을 지원하는 링크 상태 라우팅 프로토콜 구현 - 확장성을 보장하는 Reactive 경로 설정 방식의 포워딩 프로토콜 구현 - 응용과 도메인 간의 분리를 보장하는 응용 인터페이스 구현 - 식별자 기반 통신 검증을 위한 응용 개발 - 실험실 규모의 테스트베드 구축 및 KREONET 을 통한 연동 시험 o 식별자 기반 네트워킹 성능 분석 및 use case 개발 - 식별자 기반 네트워킹 주요 메커니즘 성능 분석을 위한 파라메터 도출 - 도출 성능 파라메터에 기반한 세계 주요 유사 기술과의 비교 분석 - 개발 주요 메커니즘에 대한 현 네트워크 이슈 적용 방안 개발 o 신뢰통신 기술 분석 및 기본 구조 설계 - 미국, 유럽 등의 신뢰 통신 연구 동향 분석 및 설계 요구 사항 도출 - 호스트, 컨텐츠, 서비스 등의 다양한 통신 객체 자기인증이 가능한 식별자 생성 및 인 증 메커니즘 연구 - 자기인증 식별자 기반의 신뢰 통신 구조 설계 - 신뢰 도메인 간의 신뢰 관계에 기반한 연동 구조 설계 o 식별자 기반 네트워킹 국제 표준화 및 국제 공동연구 - 미국 CMU 와 식별자 기반 통신 국제 공동 연구 수행 (‘13.7.~’15.11.) · 식별자 기반 통신에서 이동성 지원 메커니즘 비교분석 · 공동 워크샵 개최 및 연구원 상호 방문 연구 - 유럽 FP7 및 Horizon-2020 에 식별자 기반 통신 관련 기술 연구를 유럽과 공동 수행 (‘13.11. ~’15.10.) · FP7 SmartFIRE 과제 참여 및 한-EU 테스트베드 연구 시험 수행· 공동 워크샵 개최 및 연구원 상호 방문 연구 · Horizon 2020 과제 참여 추진 - IETF/IRTF 등을 통한 국제 표준화 수행 · IRTF ICNRG 를 통한 기고 및 표준화
4. 3차년도 연구 내용
□ 3차년도 (2015): 식별자 통신 확장 기능 설계 및 프로토타입 구현 o 자기인증 식별자 기반 신뢰통신 게이트웨이 프로토타입 설계 및 구현 - 자기인증 식별자를 이용한 인증(authentication) 메커니즘 설계 - 신뢰통신 네트워킹 구조 및 모듈별 설계서 개발 - 신뢰경로 구축을 위한 도메인간 negotiation 메커니즘 설계 - 신뢰통신 기능을 구비한 게이트웨이 프로토타입 개발 및 검증 o Use case를 통한 식별자 기반 네트워킹 확장 기능 설계 및 개발 - Use case 발굴 및 선정 - Use case 적용 구조 및 식별자 기반 통신 확장 기능 설계 - 식별자 기반 네트워킹 확장 기능 지원 프로토타입 구현 - 테스트베드 구축 및 서비스 시나리오 구현 o 블룸필터 기반의 매핑 시스템 구현 - GPU를 활용한 블룸필터 기반의 매핑 시스템 상세 설계 - GPU를 활용한 블룸필터 기반의 매핑 시스템 구현 - 구현 매핑 시스템의 성능 측정 o 식별자 기반 네트워킹 국제 표준화 및 국제 공동연구 - 유럽 FP7/Horizon-2020을 통해 식별자 기반 통신 관련 기술 연구를 유럽과 공동 수행 - IETF/IRTF 등을 통한 국제 표준화 수행제 3 절 연구개발 수행 체계
1. 연구개발 추진 체계
그림 2 : 연구개발 추진체계 o ETRI는 식별자 기반 네트워킹을 위한 기반원천 기술 개발 및 개념 검증을 위한 연구시제품 구현 작업을 수행함 o 홈페이지 (www.idnet.re.kr) 운영을 통해 과제 결과물을 국내외에 공개하고 기술 확산을 추진함 o 개발기술의 글로벌 기술화를 위해 미국 카네기멜론 대학과 국제 공동연구를 수행하고 및 FP7 프로젝트 참여 및 공동연구를 수행함 - 네트워크 구조 연구는 특정국가나 특정 연구 그룹에서 독립적으로 추진해서는 국제적 위상을 세우기 어려우므로 권위 있는 해외 연구기관과 국제 공동연구가 필수적임 - 미국 카네기멜론 대학의 XIA연구팀은 본 사업의 연구 방향과 유사하게 다양한 식별자 기반 통신을 하나의 통신 구조로 통합하려는 시도를 하고 있음 - 유럽 FP7 SmartFIRE 프로젝트는 미래네트워크 기술의 글로벌 규모 구현 및 검증을 목표로 하고 있음 - 국제 공동 연구를 통하여 양 연구기관에서 독자적으로 개발하고 있는 구조의장단점을 비교하고 공유 가능한 기술을 공동으로 개발하여 연구개발의 시너지를 높임과 동시에 국제 표준화 단계에서 협조를 기대할 수 있음 o 개발 기술의 글로벌 기술화를 위해 지속적으로 국제 협력 및 공동연구 체계를 추진함 - 유럽 Horizon-2020에 식별자 기반 통신 관련 기술 연구를 유럽 기관들과의 공동 제안을 추진함 - 일본 NICT와 식별자 기반 통신에 대한 국제 협력 및 공동연구를 추진함 - 유럽 ETH와 자기인증 식별자 기반 통신 국제 협력 및 공동연구를 추진함 o 개발 기술을 국제 표준화 및 국제 표준 특허 확보를 위해서 현재 관련 표준화를 추진 중인 IETF/IRTF 통한 국제 표준안 작업을 수행하고, ITU-T, IEEE 등 관련 표준화 단체를 통한 표준화 방안을 지속적으로 추진함 - IETF/IRTF를 통하여 식별자 기반 네트워킹을 위한 핵심 프로토콜에 대한 국제표준화 작업을 수행함 - ITU-T를 통하여 자기인증식별자 체계에 관련된 국제 표준화 가능 항목을 발굴함 - IEEE를 통해 이더넷 기반 단일 도메인 기술에 대한 표준화 가능 항목을 발굴함 o 국내 미래인터넷 관련 포럼인 FIF, TTA 등의 참여를 통해 개발 기술에 대한 정보 제공 및 국내 관련 연구를 활성화시킴 o 대학이 강점을 가질 수 있는 분야에 위탁연구를 통해 공동연구를 수행함 o 실제 제품화에 전문성을 가진 산업체와 용역을 통해 연구시제품을 구현함
2. 연구개발 수행 방법
o 식별자 기반 네트워킹 요구사항 및 서비스 시나리오 개발을 통해 필수 요소 기술 및 연구시제품 항목 도출 o 개발된 요구사항에 따라 핵심원천 기술을 개발하고, 국제표준화/국제공동연구 등을 통해 글로벌 기술화를 하여 식별자 기반 네트워킹 기술 선도 o 년차별 개발 연구시제품을 도출하고 산업계와의 공동 개발을 통해 개발 식별자 기반 네트워킹 기술의 기술 이전 및 상용화 추진제 2 장 연구개발 내용
제 1 절 1차년도 연구 내용 및 결과
1. 식별자 기반 네트워킹 구조 및 기반 메커니즘 개발
□ 식별자기반 네트워킹 기술 동향 분석
o 식별자 기반 네트워킹 기술과 관련된 미래인터넷 연구과제는 대표적으로, 미국 NSF의 지원과제인 MobilityFirst, CCN/NDN(Content Centric Network/Named Data Network), XIA(eXpressive Internet Architecture) 등이 있으며, 유럽에서는 EU FP7 SAIL(Scalable and Adaptive Internet Solutions) 프로젝트내에서 수행 중인 NetInf(Network of Information) 등이 있음
o 미래인터넷 기술 비교
XIA
MobilityFirstCCN/NDN
FP7 SAIL
본 과제
대표수행기관 CMU(US) Rutgers(US)WINLAb- Xerox PARC(US) Ericsson(EU) ETRI
ID type Flat Flat Hierarchical Flat Flat
Supporting
objects Host, Content, Service Host, Content, Service Content Host, Content Host, Content, Service
Routing/
Forwarding LOC(DAG)-based LOC-based Name-based LOC-based ID-based
ID-LOC Mapping system Name Resolution System: DNS like Direct Mapping (DMAP): Multiple Hash Distributed content routers Name Resolution System (NRS): DHT ID-LOC Mapping System(ILMS): Bloomfilter
ID-based API XIA-Socket API MF-Socket API CCNx NetInf API Separated IDAPI
(iPug/dSocket)
- 식별자 기반 네트워킹의 핵심 기술 영역인 식별자 부여 대상, 식별자 기반 라우팅과 포워딩, ID/LOC 매핑 시스템, ID 인터페이스에 대해 프로젝트별로 접근 방법을 그림 5 과 같이 비교함 - 미래인터넷 구조 연구들의 확장성, 이동성, 보안성, 다양성, 자율성, 지속성 기준에 의해 평가를 그림 5의 그래프로 표현 할 수 있음 그림 5 : 미래인터넷 구조 연구들의 평가 - 확장성 . MobilityFirst: 식별자와 위치의 대응에 DHT를 사용하고 호스트 식별자와 네트워크 접속점 주소의 2단계 계층구조를 가지는 구조로서 보통 정도의 확장성을 가짐 . NDN: 정보객체 위치에 독립적인 식별자를 사용하는 라우팅의 확장성을 해결하지 못하였으며, URL형식의 계층적 이름을 사용하여 확장성이 미흡
. Nebula: 네트워크를 access network, transit network, core network로 구분하여 글로벌 규모의 확장성을 가지기 어려움
. XIA: 네트워크를 다양한 principal 유형으로 구분하고, 패킷에 DAG형식의 XIA주소를 사용함으로써 확장성이 있으나 복잡한 네트워크인 경우 패킷의 DAG가 너무 길어지는 한계가 있음
. NetInf: 다양한 네트워크를 도메인으로 추상화하고 “label stack” 방식의 노드 식별자를 통한 도메인 간 라우팅을 지원하는 확장성이 좋음
- 이동성 . NetInf: 위치에 무관한 식별자를 DHT방식을 통해 위치에 대응하는 방식으로 이동성 보장이 가능 . MobilityFirst: 이동성을 목적으로 하는 과제로서 이동성 지원이 우수 . NDN: 라우팅에서 정보객체의 계층적 이름 구조를 활용함으로써 정보의 이동이나 재배치에 한계가 있음
. Nebula: core network내의 데이터센터는 mesh방식의 연결을 가정하고 access network의 사용자는 가까운 접속점을 통하여 정보에 접근하므로 끊김 없는 이동성 보장이 용이 . XIA: 이동성에 대한 명시적 언급이 없으나, DAG를 사용하는 패킷의 특성으로 인하여 통신객체가 이동하거나 네트워크의 상황이 변하면 패킷의 송신자가 이 변화를 인지하여 DAG를 수정해야 하는 번거로움이 있음 - 보안성 . MobilityFirst: 신뢰통신이 요구사항으로 정의되어 있으나 구체적인 메커니즘에 대한 언급은 없음 . NDN: 콘텐트를 전달하는 데이터 패킷에 디지털 서명과 서명된 정보를 포함하여 콘텐트 자체의 보안을 제공 . Nebula: transit 네트워크에 접근하는 접속점에서 인증 기능을 수행하고 있으나 데이터 자체에 대한 인증 기능미흡 . XIA: 자기인증 식별자를 기반으로 보안이나 신뢰 통신을 연구하고 있으나 현재 XIA의 한 요소 기술로서 발표된 경로 보안 기법인 SCION과의 연관이 부자연스러움 . NetInf: 정보자체를 해싱하거나 통신객체의 공개키나 교유정보를 해싱하여 자기인증 식별자를 생성하여 네트워크 내재적인 보안기능을 부여 - 다양성(Stylish) . MobilityFirst: 지연내성 통신이나 콘텐트 기반 통신을 언급하고 있으나 통신객체의 특성을 반영한 다양한 통신 방식에 대한 기술은 없음 . NDN: 콘텐트 기반 통신이 초점이 있는 과제로서 실시간 음성이나 영상과 같은 동적 콘텐트에 대한 일부 연구가 있으나 다양성에 대한 연구는 미흡 . Nebula: 클라우드 서비스만을 위한 경직된 네트워크 구조로서 다양한 네트워크 서비스 지원 불가
. XIA: Principal 이라는 통신 유형을 정의하고 다양한 네트워크 통신 방식을 지원하는 구조 . NetInf: NDN과 마찬가지로 콘텐트 기반의 통신을 표방하고 있으나 동적 콘텐트나 다양한 통신 객체를 지원 - 자율성(smart) . MobilityFirst: 액세스 네트워크와 글로벌 네트워크의 분리로 개별 네트워크 자율성 일부 보장 . NDN: 정보객체를 네트워크 자율적으로 캐싱하여 다른 사용자에게 제공하는 기능이 있으나 정보의 특성에 따른 네트워크 서비스의 선별과 같은 기능은 정의되어 있지 않음 . Nebula: 데이터센터로 접속하는 최적의 경로는 제공하지만 정보자체의 특성을 반영하는 서비스 제공에 대한 기능은 미흡 . XIA: 서로 다른 통신 유형을 정의함으로써 자율적인 네트 관리가 가능한 기반은 제공하지만 사용자의 의도에 따른 통신 방식의 선택에 대한 정의는 아직 없음 . NetInf: 네트워크를 자율적인 도메인으로 구성하고 각 도메인의 고유의 메커니즘을 허용 - 지속성(Sustainable) . NetInf: 네트워크를 독립적인 도메인 구조로 정의하여 개별 도메인이 독자적으로 진화 가능함 . MobilityFirst: 액세스 네트워크와 글로벌 네트워크가 독자적으로 진화 가능하지만 이질적 네트워크들이 복잡하게 연결되는 유연한 구조를 정의하고 있지는 않음 . NDN: 기존의 네트워크에 중첩된 방식으로 실현 가능한 보통의 진화성을 가짐 . Nebula: 클라우드 서비스에 국한된 경직된 구조
. XIA: 통신유형을 다양한 principal로 정의하고, 점진적 적용을 위하여 대체경로(Fallback Path)를 포함한 DAG형식의 XIA주소 체계로 진화성을 보장
□ 과제 요구사항 및 핵심 기술별 요구 사항
o 현 인터넷은 1970년초 소규모 연구망으로 출발하여 현재는 사회 핵심 인프라의 하나로 까지 발전함에 따라 여러 가지 문제점이 드러나고 있음
o 현 인터넷의 주요 문제점을 정리하면 다음과 같음
및 네트워크의 숫자가 폭발적으로 증가함에 따라 IPv4의 주소가 급속히 고갈되고 있 으며 이에 따라 인터넷 주소 할당을 총괄하는 IANA는 2011년 2월 더 이상 할당할 주 소가 없음을 공지함 - 인터넷 트래픽의 폭발적인 증가: 인터넷이 기존의 텍스트 기반에서 YouTube 등의 활성 화와 함께 멀티미디어 트래픽이 증가함에 따라 트래픽 양이 폭발적으로 증가하고 있 으며 이 중 비디오 트래픽의 비중의 더욱 커지고 있음 - 인터넷 악용자의 증가: 인터넷이 사회 인프라로 발전함에 따라 인터넷을 악용하려는 시도가 빠른 속도로 증가하고 있으며, 심각한 경우 DDoS 공격 등으로 인하여 국가정보 인프라의 작동불능 문제까지 발생하고 있음 - 인터넷 사용 환경의 다양화: 스마트폰과 다양한 엑세스 네트워크를 통한 인터넷 엑세 스가 증가함에 따라 호스트 이동성, 다양한 네트워크에 대한 멀티호밍(WiFi, LTE 등) 등의 인터넷 사용 환경이 빠른 속도로 다양화 하고 있음 o 위와 같은 현 인터넷의 문제점을 해결하기 위해 본 과제에서 개발한 새로운 네트워킹 기술의 요구사항은 다음과 같음
- 다양성 (Diversity): 새로운 네트워킹 기술은 다양한 환경 (host/service mobility, multi-homing, multi-screen 등)과 다양한 네트워크 (FTTx, WiFi, 3G, LTE, IoT, ICN 등) 를 효율적으로 지원할 수 있어야 함 - 신뢰성 (Trustworthy): 새로운 네트워킹 기술은 DDoS, 해킹 등을 구조적으로 방지하여 신뢰성 있는 통신을 제공할 수 있어야 함 - 진화성 (Evolvability): 새로운 네트워킹 기술은 새로운 네트워크 기술과 서비스의 도 입을 용이하게 하여 네트워크의 진화가 가능하도록 하여야 함 - 규모성 (Scalability): 새로운 네트워킹 기술은 컨텐츠, 서비스, 호스트 등 이상의 통 신 객체를 효율적으로 지원할 수 있어야 함 o 식별자기반 라우팅/포워딩 요구사항 - 도메인 간 라우팅은 확장성 있게 수행되어야 함 . 도메인 간 라우팅 시 주고받는 라우팅 정보는 계층적 도메인구조에 기반한 추상화를 통하여 최대한 정보의 양을 줄여야 함 . 또한 도메인간 라우팅정보의 교환은 링크-상태 라우팅 프로토콜을 사용하여 확장성 있게 수행되어야 함
- 식별자 정보를 기반으로 패킷을 포워딩할 수 있어야 함 . 도메인 게이트웨이는 헤더에 식별자 정보만을 포함하고 있는 패킷을 수신하여, 해당 식별자를 가진 통신개체가 존재하는 도메인으로 패킷을 포워딩 할 수 있어야 함 - 도메인 게이트웨이 내의 패킷 포워딩 정보는 확장성을 고려하여 관리되어야 함 . 각 도메인 게이트웨이가 관리하고 있는 패킷 포워딩 테이블은 식별자가 집적 (aggregation) 이 어려운 점을 감안하여 확장성 문제가 발생하지 않도록 효율적으로 관리하여야 함 - 목적지로의 경로설정 시 부하분산을 고려하여 다중 경로를 설정할 수 있어야 함 . 각 도메인 게이트웨이는 해당 목적지 식별자로의 경로를 설정함에 있어서, 한 개 이 상의 경로를 설정할 수 있는 라우팅정보 상의 메트릭을 제공하여야 함 . 경로 설정과정에서 이를 활용하여 경우에 따라 추가적인 경로를 설정가능 - 통신객체의 효율적인 이동성을 지원해야 함 . 특정 식별자를 가진 통신객체가 위치를 변경할 경우 (위치자를 업데이트할 경우) 도 메인 게이트웨이는 위치 변경을 탐지하고, 변경된 위치로 트래픽이 유지될 수 있는 경로 변경을 할 수 있어야 함 . 이 작업은 경우에 따라 빠르게 이루어질 수 있는 선택적기능도 제공해야 함
o ILMS (ID Locator Mapping System) 시스템 요구 사항 - 매핑 시스템의 확장성 . 급속히 증가하는 통신 객체의 증가에 따른 매핑 시스템의 확장성을 유지해야 함 . 비계층 구조의 식별자로 인한 매핑 테이블 비압축성으로 인한 매핑 시스템의 확장성 을 유지해야 함 - 매핑 시스템의 latency . 식별자/위치자 요청 문의 후 일정 시간 안에 응답이 도착해야 함 - 매핑 시스템의 빠른 위치 업데이트 . 식별자/위치자 요청 문의에 적절한 응답을 제공하기 위해, 위치자 업데이트는 빠르 게 수행되어야 함 - 매핑 시스템의 복잡도 . Bloom filter의 길이와 해쉬 함수의 개수를 적절히 선택하여 매핑 시스템의 복잡도 를 제한해야 함
o ID 인터페이스 요구 사항 - 식별자 기반의 응용이 주소에 무관하게 식별자를 기반으로 사용할 수 있는 새로운 인 터페이스가 필요 - 통신 객체와 통신 환경의 분리 원칙을 지원하며, 다양한 식별자의 형태나 새로운 네트 워크 메커니즘을 미래에도 수용할 수 있는 진화적인 인터페이스 구조가 필요 - 통신 객체는 네트워크 메커니즘에 독립적으로 ID기반 통신을 할 수 있어야 함 - 현재 인터넷 응용을 수용하여 점진적인 deployment를 지원하여야 함 - 수동적인 통신 객체 – 예, 콘텐츠 - 가 식별자 기반으로 인식되고 통신을 할 수 있도 록 지원되어야 함 o S-RBridge 요구사항
- 기존 L2 계층에서 사용되는 STP(Spanning tree Protocol)을 사용하는 브리지를 대체 할 수 있어야 함 - 이더넷 환경에서 MAC 주소를 식별자(단일 ID)로 사용하며, 이에 기반한 경로 설정 및 프레임 포워딩이 이루어져야 함 - 이더넷 환경에서 도메인 구성 및 설정이 가능하여야 함 - L2 계층 네트워크에서 별도의 설정 없이 단말의 이동성을 보장하여야 함 . 다른 서브넷으로의 단말이동시 별도의 설정 없이 네트워크 사용이 가능 - 플러딩 패킷의 looping을 방지할 수 있어야 함 - 서브넷 당 최대 1000개의 호스트를 지원 □ 식별자 기반 네트워킹 구조(NS-3 기반 ID 통신 모델) 기능 개발 및 검증 o ID 통신 전체 기능 구조
- ID 인터페이스 모듈 : iPlug, dSocket, dSocket관리자 등으로 구성
- ID 패킷 처리 및 라우팅/포워딩 모듈 : ILMS 연동, LSA 교환, Routing 테이블, 포워딩 테이블 구성 역할 및 도메인 설정에 따른 인터페이스 처리 기능으로 구성
- ILMS 모듈 : ID응용의 하나인 ILMS 서버로 동작하며, ID 등록, 위치자 lookup 등을 처 리
그림 6 : NS-3 기반 모델 개발 구조
o NS-3 상에서의 식별자 기반 통신 구현
- 식별자 기반 통신의 구현은 그림 7의 NS-3의 구현 구조를 기반으로 함
- 식별자 기반 통신 구현을 위해 새롭게 추가 확장된 모듈을 포함하고 있으며, 신규 모 듈은 기존 코드와의 통일성을 유지하면서 구현함
그림 7 : NS-3 식별자 기반 통신 모듈 구조 - 라우팅 및 포워딩 기능 구현 . 그림 30은 라우팅 테이블의 생성 과정을 나타냄 . 먼저 초기화 과정을 거친 후에 라우팅 프로토콜을 helper class에 등록함 . 자신의 neighbor 정보는 메시지 교환이 아니라 초기 설정에 의해 획득함 . 각 노드는 자신의 neighbor 정보를 LSUpdate 메시지에 담아서 전파함 . 이를 받은 노드들은 네트워크 전체의 토폴로지를 생성하고 이를 바탕으로 각자 라우 팅 테이블을 구성함 . 라우팅 테이블의 metric은 설정에 따라 hop 수, 양단간 딜레이를 사용할 수 있음. 이 때 딜레이는 LSUpdate 메시지의 TimeStamp field로부터 획득함
. 설정에 의해 라우팅 테이블에는 하나의 식별자에 대해 둘 이상의 위치자를 가질 수 있음
. 라우팅 테이블은 실제 사용하게 되는 라우팅 정보를 저장함 . Neighbor 테이블은 자신 주변의 정보를 저장함.
그림 8 : 라우팅 테이블 생성과정 그림 9 : 라우팅 프로토콜 클래스 구조 . 각 노드는 자신의 neighbor에 대한 포워딩 캐쉬를 미리 가지고 있음 (그림 10) . 응용으로부터 외부 노드로 향하는 패킷이 발생하면 해당 식별자에 대한 위치자를 찾 음 . 위치자는 ILMS 서버의 도움을 받아 획득함 . 하나의 식별자에 대해 여러 위치자가 존재하는 경우 라우팅 metric을 기준으로 최적 의 결과만을 캐쉬에 저장함
그림 10 : 포워딩 캐쉬 생성 과정 . 그림 11은 라우팅 프로토콜 클래스의 주요 멤버를 도식화한 것임 . 포워딩 테이블에는 특정 식별자에 대해서 하나의 엔트리만 생성됨. 이는 추후 확장 가능하도록 설계됨 그림 11 : 포워딩 캐쉬 구조 - 식별자/위치자 맵핑 (ILMS) 기능 구현 . 아래그림은 ILMS 서버의 동작을 보여주는 것으로, ILMS 서버는 하나의 ID 통신 응용 으로 구현함 . 각 노드는 현재 자신의 식별자와 위치자를 등록 메시지를 통해 ILMS에 등록함 . 노드에 응용이 있는 경우, 응용은 자신의 식별자와 위치자를 등록함 . 노드로부터 요청이 오면 식별자의 해당 위치자를 반환하며, 복수의 위치자가 있으면 모두 반환함
그림 12 : ILMS 서버 동작 과정 - ID 인터페이스 (iPlug, dSocket) 기능 구현 . 아래그림은 iPlug, dSocket을 통해 노드가 패킷을 외부로 전송하는 과정을 보여줌 . dSocket을 노드 구성시 생성되며, 해당 도메인에 대한 OwnerId를 가지며, 노드가 소 속된 도메인에 등록됨 . 응용은 iPlug를 생성하며, 도메인에 접속하기 위해 플러그인(plug-in) 과정을 거치 며, 이 과정에서 응용의 식별자와 위치자가 ILMS 서버에 등록됨 . 응용에서 생성된 데이터는 ID 패킷화 과정을 거쳐 dSocket으로 전달되고 그 후 idProtocol로 전달됨 . 그 후 포워딩캐쉬에 명시되어 있는 실제 인터페이스를 통해 외부로 패킷이 전송됨 그림 13 : 식별자 기반 통신에서의 패킷 전송 과정 o 시나리오에 따른 기능 검증 - 홈페이지(http://www.idnet.re.kr)의 동영상 참조
2. S-RBridge 기능 설계 및 구현
o 식별자 기반 통신이 가능하도록 이더넷 기반 도메인 (데이터 센터, 캠퍼스 네트워크 등) 내에서 MAC 주소를 식별자로 사용하는 도메인 브리지를 설계함 그림 14 : S-RBridge 개발 모델 o 이더넷 기반의 단일 도메인 내에서 mac 주소를 식별자로 사용하는 기능을 개발하기 위하여 그림 55와 같이 개발 모델을 정의하였으며 그림에서와 같이 Control plane과 Data Plane으로 구성되며 아래와 같은 기능들을 정의함 - Data plane . 프레임 전송 관리 . 프레임 전송 경로를 통한 프레임의 포워딩 . 포워딩 캐쉬 관리 - Control plane . 프레임 제어 패킷 처리 . 라우팅 테이블 관리 . 제어 경로 관리 . 프레임 포워딩을 위한 제어 절차 수행 . 프레임 포워딩을 위한 경로 설정 및 관리그림 15 : S-RBridge 동작 개념도
o S-RBridge 기본 절차 : S-RBridge는 data plane 과 control plane으로 구성됨 - Data plane에서는 이더넷 프레임을 전송하는 기능을 담당함
- Control 프레임에서는 data plane의 프레임 전송을 위한 라우팅 테이블 관리, 경로 조 회 및 설정, 컨트롤 메시지 생성 및 전달 등을 수행함 - 송신 호스트가 수신 호스트에게 데이터를 전송하면 외부와 연결된 도메인 내의 대표 S-RBridge가 수신 호스트의 주소를 검색함 - 수신 호스트의 주소가 포워딩 캐시에 존재하면 포워딩 캐시의 경로를 따라 프레임을 전송함 - 수신 호스트 주소에 대한 경로를 모를 경우 각 S-RBridge에게 수신 호스트의 존재 여 부를 확인하는 제어 메시지를 보냄. 이를 path inquiry 라고 함 - 수신 호스트가 메시지에 응답하면 응답 경로상의 S-RBridge 들은 송신 호스트와 수신 호스트 에 대한 정보를 포워딩 캐쉬에 저장함. 이를 path setup 이라고 함 - 송신 호스트가 응답을 받으면 포워딩 캐쉬에 저장된 경로를 따라 데이터가 전송되어 짐
o S-RBridge 세부 동작 절차 : S-RBridge는 이더넷 기반 도메인 환경에서 MAC 주소를 식별자로 사용하여 통신 하기 위한 기본 절차는 다음과 같음 - S-RBridge가 전송될 프레임의 목적지 주소를 알고 있는 경우 . S-RBridge 내의 포워딩 캐쉬에 저장된 목적지 주소에 대한 경로 테이블을 참조하여 프레임을 전송함 - S-RBridge가 전송될 프레임의 목적지 주소를 모르고 있는 경우 1) 호스트가 프레임을 전송하면 STP 도메인 내의 S-RBridge 가 수신 프레임내의 목적 지 주소가 Remote table과 Local Table을 검색함
- 도메인 내의 주소에 대해서는 Local Table에 저장됨
- 도메인 외부에 있는 주소에 대해서는 Remote table 에 저장됨
2) Remote table에 목적지 주소가 존재하지 않으면 목적지 주소에 대한 경로를 찾기 위하여 캡슐화되어진 S-RBridge 제어 메시지를 생성하여 각 S-RBridge로 전달함 - 제어 메시지는 분산 트리를 사용하여 도메인을 대표하는 S-RBridge간에만 전달됨 3)각 S-RBridge에서 제어 메시지를 수신하면 목적지 주소를 Remote Table과 Local
Table을 검색하여 목적지 주소의 위치를 파악함.
4)목적지 주소를 Local table에 가지고 있는 S-RBridge가 목적지 호스트에게 프레임을 전달함
5)목적지 주소의 호스트로부터 응답 메시지가 오면 목적지 주소를 알고 있는 S-RBridge는 송신 호스트의 소스 MAC 주소를 Remote table에 저장하고 제어 메시지 를 받은 경로로 응답을 함
6) 중간 단계의 S-RBridge들은 소스 MAC 주소와 목적지 MAC 주소를 Remote table에 기 록함
7) 응답 경로에 위치한 S-RBridge 들은 송신 주소와 목적지 주소에 대하여 포워딩 캐 쉬를 저장함
8) 송신 S-RBridge가 응답 메시지를 받은면 Remote Table 에 목적지 MAC 주소를 등록 및 포워딩 캐쉬를 생성하고 송신 호스트에게 응답 메시지를 전달함.
9) 응답 받은 송신 호스트는 지속적으로 data를 전송하며 각 S-RBridge에 저장된 포워 딩 캐쉬에 저장된 경로를 따라 목적지 호스트에 전달됨
Send Packet
Host Hs SRBs Host H d
STP Domain STP Domain
S.MAC Address Port domain
Remote Table
S.MAC Address Port domain 0260.8c01.1111 e1 R1 Local Table DAMAC 0260.8c01.6666 SAMAC 0260.8c01.1111 Etype 0x0800 DATA FCS
S.MAC Address Port domain 0260.8c01.1111 e1 R1
Local Table
S.MAC Address Port domain 0260.8c01.6666 e4 R8 Remote Table Search_Remote_Table_SA(S.MAC) resp_Search_Remote_Table_SA(none) Search_Local_Table_SA(S.MAC) resp_Search_Local_Table_SA(ack) Update_Local_Table_SA(S.MAC) resp_Update_Local_Table_SA(ack) Search_Remote_Table_DA(D.MAC)
resp_Search_Remote_Table_DA(ack, path, domain))
SRBC
Send_encapsulated_packet(encapsulated frame <SMAC, domain, path, command, native frame>
S.MAC Address Port domain 0260.8c01.1111 e1 R1 DAMAC 0260.8c01.1111 SAMAC 0260.8c01.6666 Etype 0x0800 DATA FCS Remote Table Search_Local_Table_DA(D.MAC) resp_Search_Local_Table_DA(ack, port)
S.MAC Address Port domain 0260.8c01.6666 e3 R8
Local Table Encapsulating frame <SMAC, domain, path, command, native frame>
Update_Remote_Table_SA(SMAC, Domain) resp_Packet(ack)
Search RT for S.MAC
Send native frame
Search RT for S.MAC
Update RT for S.MAC Search LT for S.MAC
Search RT for D.MAC
update RT for S.MAC
Decapsulation for native frame
그림 16 : Path inquiry 시나리오 Host Hs SRBs Host H d STP Domain STP Domain SRBC resp_Packet(ack) DAMAC 0260.8c01.6666 SAMAC 0260.8c01.1111 Etype 0x0800 DATA FCS S.MAC Address Port domain
0260.8c01.1111 e1 R1
Remote Table
S.MAC Address Port domain
Local Table
S.MAC Address Port domain 0260.8c01.6666 e3 R1
Local Table
S.MAC Address Port domain 0260.8c01.6666 e4 R8 Remote Table Search_Remote_Table_SA(S.MAC) resp_Search_Remote_Table_SA(none) Search_Local_Table_SA(S.MAC) resp_Search_Local_Table_SA(ack) Update_Local_Table_SA(S.MAC) resp_Update_Local_Table_SA(ack) Search_Remote_Table_DA(D.MAC)
resp_Search_Remote_Table_DA(ack, path, domain))
Encapsulating frame <SMAC, domain, path, command, native frame>
Search RT for S.MAC
Send_encapsulated_packet(encapsulated frame <SMAC, domain, path, command, native frame>
S.MAC Address Port domain 0260.8c01.6666 e4 R8 DAMAC 0260.8c01.1111 SAMAC 0260.8c01.6666 Etype 0x0800 DATA FCS Remote Table Search_Local_Table_DA(D.MAC) resp_Search_Local_Table_DA(ack, port)
S.MAC Address Port domain 0260.8c01.1111 e1 R1
Local Table
Update_Remote_Table_SA(SMAC, Domain) resp_Packet(ack)
Send native frame
update RT for S.MAC
Search RT for S.MAC
Update RT for S.MAC Search LT for S.MAC
Search RT for D.MAC
Search LT for D.MAC
Decapsulation for native frame
o S-RBbridge 형상 및 시험 내용
- 구현된 S-RBridge의 형상은 다음 그림과 같음.
그림 18 : S-RBridge 형상
. S-RBridge의 다중 경로(multi path) 동작 확인
. STP를 사용하는 기존 bridge 장비는 네트워크 연결 시 다중 경로가 존재하지 않음. . 다중 경로가 존재하는 경우 루프를 방지하기 위하여 STP을 사용하며 트리에서 선정 된 경로를 통해 데이터를 전송하게 됨. . 따라서 소스 노드로부터 목적지 노드로 데이터를 전송하게 될 경우 여러 노드가 동 시에 데이터를 전송하게 되면 경로 상의 네트워크 장비들이 부하를 받게 됨으로서 송수신하는 각 노드 간의 데이터 전송 율이 낮아지게 됨.
. S-RBridge에서는 STP를 사용하지 않고 IS-IS protocol을 이용하여 네트워크 토폴로 지를 구축하고 최소 경로(shortest path) 알고리즘에 의해 라우팅 정보를 구축하고 동일 비용을 가지는 경로가 여러 개 존재하게 되면 수신측의 노드에서 경로 설정 시 수신할 경로를 선택하여 데이터를 수신 받을 수 있도록 되어 있음 . 소스 노드로부터 목적 노드로의 다중 경로를 사용함으로써 송수신 노드간 트래픽을 분산시킴으로써 원활한 데이터 전송이 이루어지도록 함 . STP로 구성된 망에 VLC 서버와 VLC 클라이언트를 설치하고 VLC 클라이언트에서 VLC 서 버에서 제공하는 동영상을 수신하도록 하였음 . 동영상이 VLC 클라이언트에서 정상 동작되는 상황에서 트래픽 발생기를 통해 STP 네 트워크 내에 트래픽을 전송하면 VLC 클라이언트의 동영상 수신율이 급격히 하락함을 볼 수 있음
그림 19 : STP 네트워크 시험환경 그림 20 : 트래픽 발생전후 수신 트래픽 . S-RBridge로 구성된 네트워크에서의 시험 환경은 그림 63에 표현되었음 . S-RBridge로 구성된 망에 VLC 서버와 VLC 클라이언트를 설치하고 VLC 클라이언트에 서 VLC 서버에서 제공하는 동영상을 수신하도록 하였음. 동영상이 VLC 클라이언트에 서 정상 play 되는 상황에서 트래픽 발생기를 통해 STP 네트워크에서와 같이 S-RBridge로 구성된 망내에 트래픽을 전송하면 VLC 클라이언트의 동영상 수신율의 변화가 없음을 확인할 수 있었음.
그림 21 : S-RBridge 네트워크 시험환경 그림 22 : 트래픽 발생 전후 수신 트래픽 . S-RBridge의 지원 호스트 갯수 확인 ( 호스트 수 > 7000) . S-RBRidge 가 지원할 수 있는 호스트의 갯수를 측정하기 위하여 다음 그림 66과 같 이 시험 장비를 이용하여 시험 환경을 구성하고 네트워크 시험 장비에서 호스트 수 를 임의로 설정하여 S-RBridge가 접속 호스트 들에 대한 cache 정보를 구축하는지 시험하였음 그림 23 : 호스트 entry 지원 갯수 시험 환경
. 시험 결과 S-RBRidge에서 수용 가능한 호스트 수는 8,000 개 이상임(그림 68)
그림 24 : 호스트 entry 개수 확인 및 호스트 entry cache 추가 화면
제 2 절 2차년도 연구 내용 및 결과
1. 식별자 기반 네트워킹을 위한 게이트웨이 설계 및 구현
□ 식별자 기반 네트워킹 시스템 설계 및 개발 o 식별자 기반 네트워킹 시스템 구조 설계
- ID 통신 시스템은 서비스, 컨텐츠 혹은 호스트 등 통신 개체(entity)에 대해 IP 주소 가 아닌 global unique한 속성을 가지는 ID를 부여하고 이를 기반으로 대상을 식별하 며, 통신개체는 주소나 위치 정보와 결합되지 않는 특징을 가짐
- ID 통신 시스템에서 통신 개체의 목적지는 위치자(locator)로 표현되며, 재귀적인 도 메인(recursive domains)을 구성하고 이를 기반으로 효율적인 라우팅 테이블을 설정 하는 라우팅 기능과 source ID와 destination ID로 구성되는 ID 패킷의 전달 경로 설 정을 하고 포워딩 캐쉬 설정에 따라 데이터를 전달하는 포워딩 기능, 통신 개체가 ID 통신환경에 접속하고, API를 제공하여 응용을 동작하게 하는 ID 인터페이스 기능으로 구성됨
와 Locator간의 매핑시스템(ILMS)이 기능이 제공됨
그림 25 : ID 통신 전체 시스템 구성도
o ID 통신 기본 절차
- ID 개체간의 기본적인 통신절차는 ID 통신 준비 절차(provisioning steps)와 ID 통신 동작 절차(operational steps)로 구성
- 준비절차는 neighbor discovery 및 토폴로지 구성 등 Routing setup과 ID 등록/해제 등 과 같은 ID provisioning 절차 등으로 각각 독립적인 절차임
- 동작 절차는 ID 개체가 통신환경에 등장하여 준비하는 초기 통신 단계, locator 검색 및 경로 검색 등을 통한 경로 구성(path setup) 단계, 포워딩 테이블을 기반으로 패킷 을 전송하는 ID 패킷 전달 단계로 순차적으로 구성되어 동작함
1) Routing Setup 절차 : 도메인으로 구성된 ID 통신 환경에서 도메인간의 라우팅 경로를 구성하고 유지하기 위한 과정임. 크게 neighbor discovery 과정과 각 IDGW내의 Topology 데이터베이스를 구축하는 과정으로 구성