20060420_OnLinkScalability_rev1

Download Report

Transcript 20060420_OnLinkScalability_rev1

UDL On-link Scalability
Kotaro Kataoka
Keio University
Outline
• How many nodes can a single UDL
handle?
• How do we improve on-link scalability?
– Tune parameters on existing protocols
– Provide new systems
• Address Resolution on large scale UDLs
Background
• Broadcast Media as Internet Infrastructure
– Huge number of subscribers
– Unidirectional links + Feedback BDL
• What will happen there?
Definition of Scalability
• Number of nodes which a link can accommodate
– Rate of “control traffic” against available bandwidth
• Control Traffic
–
–
–
–
IPv6 Address Auto-configuration (RS, ND)
Multicast Group Management (MLD)
Unicast / Multicast Routing Protocols
Ack / Nack / And more…
• Data Traffic
– Many types of traffic
Possible Service Traffic (1/1)
External
Node
External
Node
P2
Router
P1
Internet
P4
Host
Host
Host
・・・
P3
P5?
Host
Possible Service Traffic (2/2)
Priority
Probability
1. Multicast from an external (Internet)
node to subscriber nodes
2. Unicast between a subscriber node
and an external (Internet) node
3. Multicast from a subscriber node to
external (Internet) nodes
4. Multicast from a subscriber node to
subscriber (on-link) nodes
5. Unicast between subscriber
(on-link) nodes
Focus of Research: IPv6
• Problem
– Bandwidth consumption on UDL
• Approach / Solution
– Tune back-off timers on ICMPv6
– Proxy
• Filtering Approach
• BDL Approach
Problem Analysis
• Evaluate how many hosts a
single UDL can handle without
any tuning / new system on the
link
• Scenarios
– Static (stable on changes on
the network)
• No node up/down, No node
join/leave, No UDL up/down
– Dynamic
• Nodes get up/down
• Nodes get join/leave
(multicast)
• UDL gets up/down
• How do we evaluate on-link
scalability?
– Calculation
• Check parameters from RFCs
• Mathematical Model
– Simulation
• Omnet++
• NS2?
• Make by myself?
– Emulation
• Xen?
• Experiment on AI3 UDL
Steps
• Step1: Simple Leaf Network (LAN)
– Address Auto-configuration
– Manipulation of Neighbor Cache and Prefix
• Step2: Enable Multicast Services
– Multicast Group Management
• Step3: Enable Routing Protocols
– Unicast / Multiast
Related RFCs for Initial Discussion
• RFC4294: IPv6 Node Requirements
– RFC2461: Neighbor Discovery for IP Version
6 (IPv6)
– RFC2462: IPv6 Stateless Address
Autoconfiguration
– RFC2710: Multicast Listerner Discovery
• To simplify the situation…
– Scenario for the first step
Steps to establish IPv6
communication on the links
• Stateless Address
Autoconfiguration
– Link-Local Addresses
• Creation of Link-Local
Addresses
• Duplicate Address
Detection
– Global Addresses
• Router Solicitation
• Router Advertisement
• Creation of Global
Addresses
• (Duplicate Address
Detection)
• Maintenance of neighbor
cache on each node
– Several Scenarios to
examin in a step-by-step
manner
• Maintenance of prefix on
the link
– Router Advertisement
Calculation?
• How much does “control data” flows on the
UDL?
• Bandwidth Consumption
– # of nodes
– Packet size of each message and frequency
Simple Scenario
External
Node
External
Node
P2
Router
Internet
Host
•
Host
Host
・・・
Host
Every host is communicating only with non-link-local nodes
– RAs from a Router
– Neighbor Solicitation to from every host to Default Router on expiry of Neighbor
Cache and its reverse case
– Neighbor Advertisement to from Default Router to every host as the answer for
Neighbor Solicitation and its reverse case
Calculation for Simple Scenario
• Total amount of control data which flows on the UDL is…
 Δt 
 Δt 
 Δt 
(NH 1 ) (LNS  LNA)  NH  (LNS  LNA)   (LRA)
 TR 
 TR 
 IRA 
300
00
00
90
00
# of Hosts on UDL
70
00
50
30
0
0
0
00
10
80
60
40
20
10
200
NH: Number of Hosts
150
LNS: Length of Neighbor Solicitation
100
50
LNA: Length of Neighbor Advertisement
0
LRA: Length of Router Advertisement
TR: Time duration during which nodes
recognize that the other nodes are reachable
on the link (Default: 30 sec)
• IRA: Interval of RA (Default: 600sec)
0
250
70
•
•
•
•
•
Ammount of Control Traffic
(Kbps)
ICMPv6 Traffic (Kbps)
Methods for Designing Solutions
• Solutions?
– Filtering approach
– Reverse UDL approach
• Evaluation would be done by same
method of problem analysis
Filtering Approach
Filtered Neighbor
Solicitation for DAD
DAD Proxy
UDL
Router Advertisement
with Short Interval
UDL Feed
Bridge
Router
IP
Encapsulater
Neighbor Solicitation
for DAD
UDL
Suppressed
Router Solicitation
Internet
(BDL)
UDL
Receiver
Neighbor Solicitation
for DAD
Reverse UDL Approach
Data Band via UDL
UDL Feed
UDL Receivers
・・・・
Data
Control Band via BDL
Control
• Receiver nodes advertise their BDL IP address which
are mapped to UDL IP address
• Specific traffics (protocols) go to BDL
Future Work / Directions
• Have to do many things...
– Define communications models (scenarios)
on UDL
– Analyze scalability for other scenarios
– Implement scenarios in the simulator
– Design and Implement the approach to
improve scalability on simulator
– Move into the real world
Comments?
Materials
What a router has to maintain on
an idle network on a stable link
• Unsolicited (Periodic) Router
Advertisement
– 1 per 600sec (Default MAX Interval)
• Solicited (On-demand) Router
Advertisement
– Active network only…
どう改善するか
• は別の話
• まずはanalysis frameworkが必要
Road Map
• 何やるのか
• いつごろやるのか
• 何を協力してほしいのか
Control Traffic on an Active (non-linklocal only) Network on a Stable Link
• Active (non-link-local only)?
– Every host is communicating only with non-link-local nodes
• RAs from a Router
• Neighbor Solicitation to from every host to Default
Router on expiry of Neighbor Cache and its reverse case
• Neighbor Advertisement to from Default Router to every
host as the answer for Neighbor Solicitation and its
reverse case
• For neighboring routers, reachability means that
packets sent by a node's IP layer are delivered
to the router's IP layer, and the router is indeed
forwarding packets (i.e., it is configured as a
router, not a host)
• For hosts, reachability means that packets sent
by a node's IP layer are delivered to the
neighbor host's IP layer
• 新規性はあるっぽい
– 当然多と思うからやってない
– その他の理由
• 何でやるのか
– 背景を述べる
• 地デジをIPで使うにはどうするかとか
RFCs for IPv6 Infrastructure
• Internet Protocol Version 6
– RFC 2460
• Neighbor Discovery for IPv6: RFC2461
• ICMP for the Internet Protocol Version 6
(IPv6) - RFC 2463
• Multicast Listener Discovery (MLD) for
IPv6 - RFC 2710 .....
Sirokuma-san’s comment
• Two different themes
– UDL scalability (ARP, Broadcast Protocols could work
or not with many hosts?)
– Time from network down to recovery
• Recovery time depens on many technologies
from L2~L3
– Terrestrial performance
– Check OUR SITUATION ONLY
– Use Starbet
On-going work
• Omnet++ Tutorial
– IP + IPv6 Suite Install and start to touch
• What I want to present at AI3 Meeting
– Simple calculation on link scalability
– Simple simulation of large-scale ethernet
• BCMA with delay tuning to emulate UDL
– Narrow band
– Long delay
• IPv6 nodes on UDL
めも
•
どうスケーラビリティをevaluateするのかを関連研究から整理してまとめる
•
計算したい
– Estimate number of packet
• Expire time of neighbor cache on each IPv6 node
• RA interval
•
やり方
– On-link では何のプロトコルがあるのか
– それぞれのプロトコルはNumber of node dependentなのかindependentなのか
– ICMPv6 Routing Protocol
– 時間の設定が設定できるのか
• Hello Intervalとか
• TimerはImplementation Dependentなのか、RFCで硬く定義されているのか
– ARP Cacheは30秒
– AdhocのMethodを参考にしてシミュレーションとアナリシス
Hosts / Routers
• Hosts need
– Maintain Neighbor
Cache
• Routers need to
– Maintain Neighbor
Cache
– Issue Router
Advertisement
UDL上のプロトコルの分類
• Neighbor Discovery
• Address Autoconfiguration
•
•
•
•
•
•
•
MAX_MULTICAST_SOLICIT
•
MAX_UNICAST_SOLICIT
•
MAX_ANYCAST_DELAY_TIME
1 second
•
MAX_NEIGHBOR_ADVERTISEMENT
transmissions
3
3 transmissions
MAX_INITIAL_RTR_ADVERT_INTERVAL 16 seconds
MAX_INITIAL_RTR_ADVERTISEMENTS
transmissions
3
MAX_FINAL_RTR_ADVERTISEMENTS
transmissions
3
MIN_DELAY_BETWEEN_RAS
•
MAX_RA_DELAY_TIME
3 seconds
.5 seconds
•
REACHABLE_TIME
30,000 milliseconds
•
RETRANS_TIMER
1,000 milliseconds
•
DELAY_FIRST_PROBE_TIME
•
MIN_RANDOM_FACTOR
•
MAX_RANDOM_FACTOR
5 seconds
.5
Host constants:
•
MAX_RTR_SOLICITATION_DELAY
•
RTR_SOLICITATION_INTERVAL
•
MAX_RTR_SOLICITATIONS
1.5
1 second
•
4 seconds
•
•
3 transmissions
Router constants:
•
•
Node constants:
10. PROTOCOL CONSTANTS
3 transmissions
Additional protocol constants are defined with the message
formats in
Section 4.
Scenarios
• Node definition (Make problems for each
type clear)
– Router (Host + Forwarding capability)
– Host (End node)
– Router + Host
• Type of Traffic (Services) on UDL
– See next page
What nodes have to maintain on
an idle network on a stable link
• Neighbor Cache
– Life time for each cache entry is 30sec
• Send Neighbor Solicitation to Default Router on expiry
• Send Neighbor Advertisement to Default Router on request
• Destination Cache
– Maybe vacant on an idle network
– As a result of communication, this cache is maintained
• Prefix List
– Learn from Router Advertisement
• Default Router List
– Learn from Router Advertisement
– Associated with Neighbor Cache
Very simple scenario
• Stable Link
– No New Host
– No Packet Loss
– No Link Down / UP
• Traffic
– Idle network (no traffic) as first step
– Active network as second step (Multicast from
Router)?
• Some conditions affect behavior of hosts
Calculation?
• How much does “control data” flows on the UDL?
• Bandwidth Consumption
– # of nodes
– duration
– Packet size and frequency
• Steady State
– Neigbor cacheだったら30秒ごと?
• Transient State
– Node UP/DOWN
– シンプルなシナリオ
• 10ノードのうち1がUp/Down次は2個ダウン
• Generalizationで切る