280 likes | 462 Views
이지민 ( jmlee@mmlab.snu.ac.kr ) 장동현 ( dhjang@mmlab.snu.ac.kr ) 2011-10-05 Multimedia & Mobile Communications Lab. Computer Networks Practice - Content Centric Network 1. The Advent of Network. Networking was invented for sharing resources not for data
E N D
이지민 (jmlee@mmlab.snu.ac.kr) 장동현 (dhjang@mmlab.snu.ac.kr) 2011-10-05 Multimedia & Mobile Communications Lab. Computer Networks Practice- Content Centric Network 1
The Advent of Network • Networking was invented for sharing resources not for data • A user connects to server to use resources in machines
Internet • Original motivation for Internet is to share computing resources • Remote login, file transfer • The Internet communication model is host-to-host conversations • An IP address indicates a host • It has been working 40 years • TCP/IP has been so flexible for diverse host based applications
Evolution of Network • However, overwhelming use of today’s network is for a machine to acquire data • Internet traffic is already content-oriented • Video stream is over 60% in Internet traffic • Multimedia, P2P.. • Data communication today is about moving content • Internet was moving dozens of exabytes a month
Need for New Network • IP datagram can only name communication endpoints • Current network-architecture is not appropriate for current usage • Users/applications care ‘WHAT TO RECEIVE’ • Don’t care ‘FROM WHERE or FROM WHOM’ • Host-based comm. Model is outdated • Propose an new internet architecture by removing this restriction • Content Centric Network
Architecture Principle • Hourglass architecture • ‘thin waist’ has been a key enabler for internet’s explosive growth • Routing and forwarding plane separation • Similar to current one • Security is built into the architecture • By signing all named data
NDN Architecture • Component • Messages • Interest • Data • FIB (Forwarding Information Base) • Similar to routing table • PIT (Pending Interest Table) • Store interests for data • Content Store • Space for cached data
NDN Basic Operation No Cache! Interest MMLAB.kr/member/tjchung/ profile/v/s0 MMLAB.kr/member/tjchung/profile/v/s0 DATA:/ MMLAB.kr/member/tjchung/ profile/v/s0 MMLAB.kr/member/tjchung/profile/v/s0 0 /MMLAB.kr 1
NDN Supports • Automatically support various functionality without extra infrastructure • Content Distribution • Many users requesting the same data at different time • Mobility • User request data at different location • Delay-Tolerant Networking • Data is cached close to user
Architecture 1) Name • Names are flexible • Allows each application to choose the name scheme that fits its need • Hierarchically structured name • Example • http://www.sonystudio.com/spiderman3.avi • To retrieve dynamically generated data, it needs • Deterministic algorithm between consumer and producer • Partial name supports • mmlab/lecture/CNpratice -> mmlab/lecture/CNpractice/2011/
Architecture2) Routing and Forwarding • Routing packets on name, which solves • 1) Address space exhaustion • Think about current IP address.. • Unbound namespaces • 2) Mobility • No longer breaks communication • 3) Scalable address management • Address assignment & management is no longer required in local network
Architecture 3) Caching • CCN router buffers data packet • Cache - Router • In-network caching • Benefits • Both of static and dynamic data could be got benefits • In case of dynamic data, retransmission cost is eased • Alleviation of privacy problem concerns • In today’s network, one can figure out WHAT data is, WHO wants data from by inspecting header • NDN router doesn’t know who originates the request
Architecture 4) Security • Security is not ‘opt-out’ but mandatory • Every data carries a signature • Data publisher information enables provenance
팀 별 주제 정하기 • 팀 별 위의 주제 중 하나를 선정한다. • 10월 12일(수) 까지 선정. • 수업시작 전 까지 TA에게 이메일로 통보. • ne-ta@mmlab.snu.ac.kr • 중복 선택은 불가하며, 선착순 배정. • 10월 19일 (수), 팀 별 해당 주제에 대한 이해도 체크를 위한 팀 별 발표가 있으므로 신중히 선택.
'하' - Cache Monitoring • Router에 존재하는 Cache Storage의 상태를 알려주는 툴을 작성 • 여러 대의 Router를 하나의 서버에서 모니터링 할 필요는 없고 한 Router에 설치되어 설치된 Router의 Cache Storage 상태만 파악하면 됨 • Cache Storage의 상태란 Cache Storage에 어떤 Chunk들이 캐쉬되어 있고 각 청크의 Timeout은 언제이며 어느 정도의 크기를 갖는지 등등을 의미 Content3 Content2 Content1
'하' - 파일탐색기 • 기존의 CCNx에서는 Repository에 있는 Contents의 목록만 볼 수 있는 툴이 있는데, 이 툴을 업그레이드하여 현재 윈도우의 파일 탐색기와 같이 Contents를 실행할 수 있고 미리보기 할 수 있으며, Content의 등록정보를 볼 수 있는 툴을 작성
'하' - Random Chatting • 요새 스마트폰의 앱으로 많이 존재하는 Random Chatting을 CCNx 상에서 구현 • 이 때 기존의 IP 네트워크에서의 구현과 다른 점은 중앙 서버가 없다는 점임
'중' - Game Center • 여러 사람들과 함께 간단한 게임을 할 수 있는 Game Center를 구축 • 이 때 Game Center는 IP 네트워크에서와 같이 하나의 서버로 동작하지 않음. 즉, CCN의 특성을 살려서 중앙서버가 없이 동작하는 Game Center를 구축. • Game Center에는 두 사람 이상이 같이 할 수 있는 게임 - 예를 들어 Baseball Game, 빙고 게임, 끝말잇기 게임, etc - 을 3가지 이상 구현
'중' - Interest Trace • 기존에 존재하는 Traceroute와 같은 프로그램을 CCNx에서 구현 • Traceroute는 Packet을 추적해서 어느 Router를 거치는지 알아내는 프로그램인데, 이것의 CCN 버전을 만드는 것임. • 즉, Interest Packet이 어느 Router를 거치는지 알아내는 프로그램을 구현
'중' - Webhard • Dropbox나 다음클라우드 같은 웹하드를 CCNx 상에 구현 • 단순히 파일의 업로드, 다운로드 뿐만 아니라 로컬드라이브와 웹하드와의Syncronization도 구현
'상' - Video Conference • 말그대로 CCNx 상에서 화상으로 회의를 열 수 있게 해주는 툴을 의미
'상' - 토폴로지 자동완성 • CCNx로 테스트 베드를 구현시에 테스트 베드가 어떤 토폴로지로 구성되어 있는지 분석해 주는 툴을 구현
'상' - 네트워크 통계치 분석 • 얼마나 많은 Interests와 Content chunks가 오고 갔는지와 Throughput, Latency, Cache Storage 사용 현황, FIB, CS, PIT의 변화 현황 등등을 하나의 서버에서 확인할 수 있음 • 즉, 각각의 Router를 모니터링 해서 네트워크 통계치를 작성하는 툴을 구현