Transcript 1 - MMLab
Computer Networks Practice
- Content Centric Network 1
이지민 ([email protected])
장동현 ([email protected])
2011-10-05
Multimedia & Mobile Communications Lab.
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
The Internet communication model is host-tohost conversations
Remote login, file transfer
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
Users/applications care ‘WHAT TO RECEIVE’
Current network-architecture is not appropriate for current
usage
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
Routing and forwarding plane separation
‘thin waist’ has been a key enabler for internet’s explosive
growth
Similar to current one
Security is built into the architecture
By signing all named data
NDN Architecture
Component
Messages
•
•
FIB (Forwarding Information Base)
•
Similar to routing table
PIT (Pending Interest Table)
•
Interest
Data
Store interests for data
Content Store
•
Space for cached data
NDN Architecture
NDN Basic Operation
Interest
MMLAB.kr/member/tjchung/
profile/v/s0
MMLAB.kr/member/tjchung/profile/v/s0
No Cache!
MMLAB.kr/member/tjchung/profile/v/s0
/MMLAB.kr
1
0
DATA:/
MMLAB.kr/member/tjchung/
profile/v/s0
NDN Supports
Automatically support various functionality
without extra infrastructure
Content Distribution
•
Mobility
•
Many users requesting the same data at different time
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/
Architecture
2) Routing and Forwarding
Routing packets on name, which solves
1) Address space exhaustion
•
•
2) Mobility
•
Think about current IP address..
Unbound namespaces
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
CCN conclusion
CCN conclusion
CCN conclusion
팀별 주제 정하기
상
중
하
Video Conference
Game Center
Cache Monitoring
토폴로지 자동완성
Interest Trace
파일 탐색기
네트워크 통계치 분석
Web-hard
Random Chatting
팀 별 주제 정하기
팀 별 위의 주제 중 하나를 선정한다.
10월 12일(수) 까지 선정.
수업시작 전 까지 TA에게 이메일 로 통보.
•
[email protected]
중복 선택은 불가하며, 선착순 배정.
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를 모니터링 해서 네트워크
통계치를 작성하는 툴을 구현