* Your assessment is very important for improving the workof artificial intelligence, which forms the content of this project
Download Analyzing Cross-layer Interaction in Overlay Networks
Survey
Document related concepts
Multiprotocol Label Switching wikipedia , lookup
Asynchronous Transfer Mode wikipedia , lookup
Distributed firewall wikipedia , lookup
Airborne Networking wikipedia , lookup
Network tap wikipedia , lookup
IEEE 802.1aq wikipedia , lookup
Computer network wikipedia , lookup
Deep packet inspection wikipedia , lookup
Routing in delay-tolerant networking wikipedia , lookup
Internet protocol suite wikipedia , lookup
UniPro protocol stack wikipedia , lookup
Peer-to-peer wikipedia , lookup
Recursive InterNetwork Architecture (RINA) wikipedia , lookup
Transcript
Analyzing Cross-layer Interaction in Overlay Networks Srinivasan Seetharaman September 2007 Overlay Networks Overlay networking helps overcome functionality limitations of the Internet by forming a virtual network over the native IP network that is: Independent Customizable 2 Service Overlay Networks Offer enhanced or new services by deploying intelligent routing schemes. Overlay link Relaying 3 Service Overlay Networks (contd.) Characteristics: Nodes and links are persistent Perform overlay routing independent of native layer routing Each Overlay path comprises one or more Overlay links, based on a certain selfish objective Many types of services can be offered Multicast (e.g. ESM, Overcast) QoS (e.g. OverQoS, SON) Security (e.g. DynaBone, SOS) Better routes (e.g. RON, Detour, X-Bone) … and much more 4 Cross-Layer Interaction Performing dynamic routing at both overlay and native IP layers leads to: Conflict due to mismatch or misalignment of routing objectives Contention for limited physical resources Functionality overlap (Both overlay layer and IP layer perform similar set of functions) 5 Cross-Layer Interaction (contd.) These issues are amplified in the presence of Selfish motives and aggressive behavior Lack of information about other layer Increasing impact ( #overlays |Traffic| ) 6 Context Native network topology Intra-domain Inter-domain Attitude of native network Restrictive Oblivious Cooperative 7 Thesis Organization . Oblivious Cooperative OR vs Load balancing Intradomain Interdomain Restrictive [Chapter V] Interaction with failure recovery [Chapter III] OR vs Policy constraints [Chapter IV] Overlayfriendly native network [Chapter VII] BT vs Load balancing [Chapter VI] 8 INTERACTION BETWEEN FAILURE RECOVERY IN THE NATIVE AND OVERLAY LAYERS Chapter III Dual Rerouting Each layer performs rerouting, with no knowledge of which layer leads to optimal restoration Overlay rerouting C A C OVERLAY1 F G D A B A E E F H LAYER H X Failure B NATIVE IP D G Native rerouting LAYER 12 Downside to Dual Rerouting 1. Overlap of functionality between layers causing Unnecessary route changes (esp when connectivity in native network is very dynamic) Increased probing overhead 2. Unawareness of other layer’s decisions leading to Multiple simultaneous failures 3. Lack of flexibility and control 15 Tuning Dual Rerouting Intra-domain (keepAlive-time = 1 sec, hold-time = 3 secs) Dual Rerouting Average route changes Suppress overlay rerouting at 0.5 prob. Defer overlay rerouting by 0.375 secs Native-only rerouting 125.08% 101.59% 109.85% 1.567 Stabilized inflation 100% 108.32% 100% 1.202 Time when stable 113.7% 100.48% 107.33% 2.481 114.22% 109.98% 110.73% 1.202 Peak inflation 17 Further Improving Recovery Adjust the functioning of native layer: Tuning keepAlive-time keepAlive-time Tuning the native layer keepAlive-time: This produces the best tradeoff between # of route changes, stabilization time and recovery time 19 INTERACTION BETWEEN OVERLAY ROUTING AND TRAFFIC ENGINEERING Chapter V Repeated Non-Cooperative Game Player1: Overlay Routing - Latency-optimized paths between nodes Player2: Traffic Engineering - Optimal load-balanced routes Overlay Link Latencies Overlay Routing Overlay routes Native link delays Overlay layer traffic Traffic on each overlay link Native routes Traffic Engineering TM Background traffic 21 Simulation Results TE objective Round Overlay objective Overall stability 26 Our goal .. is to propose strategies that obtain the best possible performance for a particular layer while steering the system towards a stable state. 28 Resolving Conflict – Our Approach Assume: Each layer has a general notion of the other layer’s selfish objective Designate leader / follower Operate leader such that a. Follower has no desire to change b. Follower has no alternative to pick Friendly Hostile Use history to learn desired action gradually. 31 Performance of Preemptive Strategies We proposed four strategies that improve performance for one layer and achieve a stable operating point Inflation factor = Steady state obj value with strategy Best obj value achieved Inflation Leader Strategy Overlay TE Overlay Friendly: Load-constrained LP Hostile: Dummy traffic injection 1.082 1.023 1.122 1.992 Native Friendly: Hopcount-constrained LP Hostile: Load-based Latency tuning 1.027 1.938 1.184 1.072 36 CROSS-LAYER INTERACTION OF PERFORMANCE-AWARE OVERLAY APPLICATIONS Chapter VI BitTorrent File-Sharing Popular file-sharing application that generates a large volume of Internet traffic Characteristics: Service capacity increases with demand Centralized tracker regulating neighborhood Dynamically change active peers by choke/unchoke protocol 39 Comparison to Overlay Routing Data2 Data1 A2 A3 B1 B2 A1 AX BY 40 BitTorrent Protocol Tit-for-tat based incentive for uploading decisions Leecher: Unchoke the fastest uploaders Seed: Unchoke the fastest downloaders Popular strategy to improve performance Optimistic unchoke: periodically look for faster peers 41 BitTorrent Dynamics B A C D E Choke Choke Unchoke Request Unchoke When bottlenecked on link L1 L2 L1 X Peer TFT Upload statsacross links is balanced Download stats Load distribution Status Opt? Interested Pieces? BitTorrent apps use all available b/w Status My interest 43 BitTorrent Dynamics A B D E Choke Choke C Unchoke L2 L1 When NOT bottlenecked on link L1 X Load distribution across links is unbalanced 44 Cross-Layer Interaction Operating BitTorrent disrupts load balance and can result in high max util: This can be a problem for background traffic Objective of native layer: Minimize ( Max Util.) Objective of BitTorrent: Minimize (Overall finish time) 45 Simulation Setup Pick 100 ASes with 60% of them being non-stub ASes 49 Simulation Setup L1 D F F B A L2 C E Generate 1-50 peers. Each associating with 1-3 torrents 50 Simulation Performance Metrics Max util across access links = MaxaE ( Xa/Ca ), E is set of all links X is the load, C is the capacity Average finish time inflation of leechers = 1/Nl Nl ( ’ / ) i=1 i i Nl is # of leechers ’ is finish time after strategy 53 Reducing Impact – Traffic Engg TE can be performed across inter-domain access links, in order to minimize (Max util) Two flavors: Ingress / Egress Determines which access link to pick for a certain destination or source IP address 54 Reducing Impact – Traffic Engg (contd.) Performance of a random AS (Focus AS) Applying TE does not make much difference 55 Reducing Impact – Tuning BitTorrent Alter certain BitTorrent protocol components or tune the associated parameters Minimal reduction of the max util Significant inflation of finish time Specifically, we tried each of the following: Make peer selection random Make piece selection random Reduce duration of optimistic unchoking Freeze list of unchoked peers after 10 mins Tune the unchoking timers 57 Reducing Impact – Locality-awareness Locality-based traffic management Give priority to peers within AS No change to BitTorrent clients Also try caching of requests sent outside AS 59 Reducing Impact – Bandwidth Throttling Limit bandwidth consumed by BT traffic Popular strategy among most ASes Involves lesser infrastructure cost 60 Cross-layer Conflict Native layer and BitTorrent layer constantly retaliate to other layer’s disruptive behavior Peers deploy BitTorrent Protocol Encryption to avoid detection by native layer We develop two “friendly” BitTorrent strategies that achieve a mutually agreeable point by reducing peak load 61 A. Limit # of parallel downloads Average The unchoking protocol and their timeline is uncoordinated across neighbors 62 A. Limit # of parallel downloads (contd.) Reduces peak load from 0.94 to 0.852 Finish time inflation is 1.1501 63 B. Avoiding common neighbors Problem is that two peers in same AS often contact same peer outside AS Algorithm Perform bilateral info exchange where each peer A finds out if its neighbor B has a neighbor C inside its own AS If yes, toss a coin to determine if we can download from this peer B (Randomization acts as a load balancing strategy) 64 B. Avoiding common neighbors (contd.) Reduces max util from 0.94 to 0.85 Finish time inflation is 1.187 65 ANALYZING INTER-DOMAIN POLICY VIOLATIONS IN OVERLAY ROUTES Chapter IV Inter-Domain Policy Violations Two types of violations exist Provider 1 Client 1 A Peer $$ Overlay route B Client 2 Transit violation Provider 2 Legitimate native route $ Client 3 C Exit violation 70 Measurement Results Each transit violation has a corresponding exit violation upstream Extent of exit policy violations in multihop paths Violation Type % paths Next hop AS violated 72.05 Exit point violated 15.63 Total 87.68 75 Policy Enforcement by Native Layer As ISPs become aware of the negative impact of overlays and commence filtering, this leads to drastic deterioration in overlay route performance commensurate with the number of ASes enforcing policy 76 Resolving Conflict Overlay Service Provider (OSP) adopts a combination of the following strategies for achieving good legitimate paths: 1. Obtain transit permit from certain AS for $T 2. Add new node to certain provider AS for $N 3. Obtain exit permit from certain AS for $E 77 Illustration of Mitigation Strategy With no filtering, 11 Tier-1 provider 13 AS hosting overlay node Cust-Prov relation Tier-2 provider Stub customer 21 31 Peering relation 23 22 32 33 Transit violation 78 Illustration of Mitigation Strategy (contd.) With filtering, we have no multi-hop paths 11 Tier-1 provider 13 AS hosting overlay node Cust-Prov relation Tier-2 provider Stub customer 21 31 Peering relation 23 22 32 33 79 Illustration of Mitigation Strategy (contd.) Option 1: Add new overlay node to provider AS 22 11 Tier-1 provider 13 AS hosting overlay node Cust-Prov relation Tier-2 provider Stub customer 21 31 Peering relation 23 22 32 33 Option 2: Obtain transit permit from stub AS 32 80 Objective of Mitigation Strategy For a certain budget, determine which ASes to obtain transit permit from to add new node to to obtain exit permit from … so as to achieve the best possible gain Gain = Native route latency – Overlay path latency Native route latency 81 Mitigation Results When all permit fee = P, new node fee = N Permit Add new node 83 Summary of Cross-Layer Interaction Overlays offer valuable services needed by endsystems. But, lead to complex cross-layer interaction with potentially detrimental effects Layer awareness is essential to reduce negative effects and to improve performance of both layers. We propose simple strategies that achieve this goal in an effective manner. 90 Contributions of Thesis Knobs for better control over the cross-layer interaction Analysis and mitigation of the conflict in objective between native and overlay layers: inter-domain: OR vs Policy enforcement intra-domain: OR vs Traffic engg Ways to improve coexistence between BitTorrent file-sharing and native layer Framework for network layer support of overlay services 91 Future of Overlays Overlays are essential as… Means for end-systems to collaborate Environment for testing future innovations (GENI) Architecture for Future Internet in the form of Network Virtualization Cross-layer interaction will affect performance. How best to design protocols and services in the future? 92 Future Work Need to address the network impasse. How to tune the network for .. the new breed of Internet applications? (e.g., file sharing) …and new paradigms of communication? (e.g., wireless) Which layer to implement a service at? For example, a service like multicast can be performed at both native layer and overlay layer! Which layer to use for a particular scenario? How can the other layer support this service? 93