Inter-domain Routing Simulation by SSFNet Wang Lijun Tsinghua University Jul 3, 2006.

Slides:



Advertisements
Similar presentations
CS Summer 2003 CS672: MPLS Architecture, Applications and Fault-Tolerance.
Advertisements

Network Layer: Internet-Wide Routing & BGP Dina Katabi & Sam Madden.
© J. Liebeherr, All rights reserved 1 Border Gateway Protocol This lecture is largely based on a BGP tutorial by T. Griffin from AT&T Research.
Fundamentals of Computer Networks ECE 478/578 Lecture #18: Policy-Based Routing Instructor: Loukas Lazos Dept of Electrical and Computer Engineering University.
© 2005 Cisco Systems, Inc. All rights reserved. BGP v3.2—1-1 Module Summary BGP has reliable transport provided by TCP, a rich set of metrics called BGP.
Copyright 2002 Year 2 - Chapter 5/Cisco 3 - Module 5 Routing Protocols: IGRP By Carl Marandola.
1 Interdomain Routing Protocols. 2 Autonomous Systems An autonomous system (AS) is a region of the Internet that is administered by a single entity and.
IPv4 and IPv6 Mobility Support Using MPLS and MP-BGP draft-berzin-malis-mpls-mobility-00 Oleg Berzin, Andy Malis {oleg.berzin,
1 Routing Simulations – Zebra Routing Software Eric Ciocca Dimitris Zacharopoulos.
1 BGP Security -- Zhen Wu. 2 Schedule Tuesday –BGP Background –" Detection of Invalid Routing Announcement in the Internet" –Open Discussions Thursday.
1 6/14/ :27 CS575Internetworking & Routers1 Rivier College CS575: Advanced LANs Chapter 13: Internetworking & Routers.
CS 164: Global Internet Slide Set In this set... More about subnets Classless Inter Domain Routing (CIDR) Border Gateway Protocol (BGP) Areas with.
Interdomain Routing and The Border Gateway Protocol (BGP) Courtesy of Timothy G. Griffin Intel Research, Cambridge UK
Computer Science 1 An Approach to Universal Topology Generation Alberto Medina Anukool Lakhina Ibrahim Matta John Byers
Improving BGP Convergence Through Consistency Assertions Dan Pei, Lan Wang, Lixia Zhang UCLA Xiaoliang Zhao, Daniel Massey, Allison Mankin, USC/ISI S.
Protocols and the TCP/IP Suite
More on BGP Check out the links on politics: ICANN and net neutrality To read for next time Path selection big example Scaling of BGP.
Routing.
ROUTING PROTOCOLS Rizwan Rehman. Static routing  each router manually configured with a list of destinations and the next hop to reach those destinations.
Lecture Week 3 Introduction to Dynamic Routing Protocol Routing Protocols and Concepts.
1 ECE453 – Introduction to Computer Networks Lecture 10 – Network Layer (Routing II)
Computer Networks Layering and Routing Dina Katabi
Chapter 22 Network Layer: Delivery, Forwarding, and Routing
Unicast Routing Protocols  A routing protocol is a combination of rules and procedures that lets routers in the internet inform each other of changes.
Routing and Routing Protocols Routing Protocols Overview.
M.Menelaou CCNA2 ROUTING. M.Menelaou ROUTING Routing is the process that a router uses to forward packets toward the destination network. A router makes.
Institute of Computer and Communication Network Engineering OFC/NFOEC, 6-10 March 2011, Los Angeles, CA Lessons Learned From Implementing a Path Computation.
1 Interdomain Routing (BGP) By Behzad Akbari Fall 2008 These slides are based on the slides of Ion Stoica (UCB) and Shivkumar (RPI)
CS 3700 Networks and Distributed Systems Inter Domain Routing (It’s all about the Money) Revised 8/20/15.
Routing protocols Basic Routing Routing Information Protocol (RIP) Open Shortest Path First (OSPF)
Modeling the Border Gateway Protocol Xenofontas Dimitropoulos George Riley Georgia Institute of Technology.
Objectives: Chapter 5: Network/Internet Layer  How Networks are connected Network/Internet Layer Routed Protocols Routing Protocols Autonomous Systems.
Border Gateway Protocol Presented BY Jay Purohit & Rupal Jaiswal GROUP 9.
Chapter 9. Implementing Scalability Features in Your Internetwork.
Border Gateway Protocol
SEP: Sensibility analysis of BGP convergence and scalability using network simulation Sensibility analysis of BGP convergence and scalability using network.
Border Gateway Protocol (BGP) W.lilakiatsakun. BGP Basics (1) BGP is the protocol which is used to make core routing decisions on the Internet It involves.
More on Internet Routing A large portion of this lecture material comes from BGP tutorial given by Philip Smith from Cisco (ftp://ftp- eng.cisco.com/pfs/seminars/APRICOT2004.
SSFNet and Routing Simulation BJ Premore Dartmouth College.
T. S. Eugene Ngeugeneng at cs.rice.edu Rice University1 COMP/ELEC 429/556 Introduction to Computer Networks Inter-domain routing Some slides used with.
Investigation of Global Network Routing Behavior BJ Premore Dartmouth College Prof. David Nicol, Advisor December 8, 2000 In collaboration with Jim Cowie,
TCOM 509 – Internet Protocols (TCP/IP) Lecture 06_a Routing Protocols: RIP, OSPF, BGP Instructor: Dr. Li-Chuan Chen Date: 10/06/2003 Based in part upon.
02/01/2006USC/ISI1 Updates on Routing Experiments Cyber DEfense Technology Experimental Research (DETER) Network Evaluation Methods for Internet Security.
CHAPTER 4 PROTOCOLS AND THE TCP/IP SUITE Acknowledgement: The Slides Were Provided By Cory Beard, William Stallings For Their Textbook “Wireless Communication.
An internet is a combination of networks connected by routers. When a datagram goes from a source to a destination, it will probably pass through many.
Routing in the Inernet Outcomes: –What are routing protocols used for Intra-ASs Routing in the Internet? –The Working Principle of RIP and OSPF –What is.
Routing Protocols Brandon Wagner.
1 Border Gateway Protocol (BGP) and BGP Security Jeff Gribschaw Sai Thwin ECE 4112 Final Project April 28, 2005.
1 Chapter 14-16a Internet Routing Review. Chapter 14-16: Internet Routing Review 2 Introduction Motivation: Router performance is critical to overall.
Text BGP Basics. Document Name CONFIDENTIAL Border Gateway Protocol (BGP) Introduction to BGP BGP Neighbor Establishment Process BGP Message Types BGP.
Inter-domain Routing Outline Border Gateway Protocol.
Year 2 - Chapter 5/Cisco 3 - Module 5 Routing Protocols: IGRP.
Computer Networks Routing Algorithms.
BGP 1. BGP Overview 2. Multihoming 3. Configuring BGP.
Border Gateway Protocol
COS 561: Advanced Computer Networks
BGP supplement Abhigyan Sharma.
Routing.
Protocols and the TCP/IP Suite
Cours BGP-MPLS-IPV6-QOS
COS 561: Advanced Computer Networks
COS 561: Advanced Computer Networks
COS 561: Advanced Computer Networks
COS 561: Advanced Computer Networks
BGP Interactions Jennifer Rexford
COS 461: Computer Networks
Protocols and the TCP/IP Suite
BGP Instability Jennifer Rexford
Computer Networks Protocols
Routing.
Presentation transcript:

Inter-domain Routing Simulation by SSFNet Wang Lijun Tsinghua University Jul 3, 2006

Inter-domain Routing Autonomous system –ISP, University, Company, e.g. CERNET, CHINACOM –About more than 19,000 ASes –Glued together by BGP Border Gateway Protocol –Flexibility –Scalability –Stability

Research on inter-domain routing Collecting BGP data from Internet –Active method –Log BGP table and Update Route Views Project RIPE Routing Information Service Simulation –SSFNet

What is SSFNet SSFNet is a Java SSF-based simulator of Internet protocol Features –IP packet-level granularity –all components have multiple configurable attributes –components all inter-operable –designed to handle large, complex simulations

SSFNet Architecture SSF : Scalable Simulation Framework –a standard for discrete-event simulation of large, complex systems DML : Domain Modeling Language –a standard for model configuration and verification –supports extensibility, inheritance and substitution of attributes SSFNet : SSF Network Models –open-source Java models of protocols –network elements –assorted support classes

Simulation Layers SSF Simulator API C++CJava CSSFRacewayDaSSF Simulator Implementations implements SSFNet Network Components enhances Model Instances DML configures

IDE Package SSF CSSFDaSSF Simulator API SSFNet C++CJava Network Components implements enhances configures DML Model Instances Raceway Simulator Implementations

SSFNet Layer SSF DML CSSFRacewayDaSSF Simulator API Simulator Implementations SSFNet C++CJava Network Components Model Instances implements enhances configures

Network Components physical entities link router host logical containers Net protocol graph protocols BGP OSPF FTP client HTTP client Sockets IPTCP - each is a Java class or Java package - includes state, behavior, configure info

DML Layer SSF CSSFRacewayDaSSF Simulator API Simulator Implementations SSFNet C++CJava Network Components implements enhances configures Model Instances DML

DML Example host [ id 1 interface [ id 1 ] ] router [ id 2 interface [ idrange [ from 1 to 4 ] ] ] link [ attach 1(1) attach 2(1) ] Attribute/Value pairs –Simple attributes –Nested attributes

The Protocol Stack protocol graph router [ graph [ ProtocolSession [ name bgp use SSF.OS.BGP4.BGPSession ] ProtocolSession [ name ospf use SSF.OS.OSPF.sOSPF ] ProtocolSession [ name tcp use SSF.OS.TCP.tcpSessionMaster ] ProtocolSession [ name ip use SSF.OS.IP ] IP TCP Sockets BGP

NHI Addressing Internal format for model-building convenience N:N:N:... :N:H(I) –N = network id –H = host id –I = interface id top-level Net does not have id local vs. global –local link need not attach to global NHI address –networks and hosts may be abbreviated or omitted

Hierarchy Example Net [ host [ id 1 interface [ id 1 ] ] host [ id 2 interface [ id 1 ] ] link [ attach 1(1) attach 2(1) ] ]

Hierarchy Example 2 Net [ Net [ id 1... ] # 2 hosts + 1 router Net [ id 2... ] # 4 hosts + 1 router link [ attach 1:5(4) attach 2:5(5) ] ]

Execution Download distribution – –ssfnet_raceway[1].tar.gz Build and validate –~/ssfnet/$:make Create and execute DML model –java SSF.Net.Net runtime dml-file

SSF.OS.BGP4 Functionality Finite state machine, timers, RIB TCP transport Peering: exterior and interior –Route reflection Messages and path attributes Policy –filter based on path attribute –attribute modification Monitoring of protocol operation –gather stats on practically any event of interest

Experiment DML Net [ # the all-encompassing Net frequency # nanosecond simulation frequency randomstream [ generator MersenneTwister stream reproducibility_level timeline ] Net [ id 1 AS_status boundary router [... ] ] Net [ id 2 AS_status boundary router [... ] ]... link [ attach 1:1(1) attach 2:1(7) delay 0.01 ] link [ attach 1:1(2) attach 3:1(7) delay 0.01 ]... bgpoptions [... ] # define global BGP options ] # end of the all-encompassing Net

Experiment DML router [ id 1 graph [ ProtocolSession [ name bgp use SSF.OS.BGP4.BGPSession autoconfig true ] ProtocolSession [ name socket use SSF.OS.Socket.socketMaster ] ProtocolSession [ name tcp use SSF.OS.TCP.tcpSessionMaster ] ProtocolSession [ name ip use SSF.OS.IP ] ProtocolSession [ name probe use SSF.OS.ProbeSession file "out.data" stream "bgpstream" ] ]

Experiment DML ProtocolSession [ name bgp use SSF.OS.BGP4.BGPSession autoconfig false connretry_time 120 min_as_orig_time 15 reflector false neighbor [ as 2 address 1(7) use_return_address 1(1) hold_time 90 keep_alive_time 30 mrai 10 infilter [ _extends.filters.permit_all ] outfilter [ _extends.filters.permit_all ] ] neighbor [ as 3 address 1(1)... ]

Experiment DML bgpoptions [ # define global BGP options show_conn_estab true # show connection establishment show_snd_update true # show when updates are sent ssld false # no sender-side loop detection auto_advertise false show_fwd_table_add true show_rcv_notif true show_socket_events false show_state_changes false global_ebgp_mrai 20 startup_jitter_bound 0.1 # about 50 more... ] Output data in simulation Parameters configure BGP behavior

References

Modify RFD to improve BGP routing convergence

Problem statement Problem of BGP routing convergence –Path exploration Path vector protocol Lots of Invalid Update messages Long convergence delay –RFD suppress relative stable routes falsely Relative routes unavailable for a long time

Route Flap Damping Penalty value –Increase a predefined value when route changes –Decrease exponentially when route is stable

Objectives Relative stable routes converge fast Suppressing persistently flapping routes Reducing the communication overhead Compatible with current method

Basic ideas Classify route change according different causes –Update from Network event, e.g. link down –Invalid Update from BGP protocol behavior Apply different mechanisms to Update of different causes How to differentiate ?

Design Overview Receive Update Judge cause suppression mark ? BGP session broken ? Apply RFD Invalid routes suppression BGP protocol behavior ? NoYes Location causing route change –Original node –Intermediate connection Only nodes near the causing location apply RFD to the route change Other nodes apply methods different form RFD, invalid routes suppression

Neighboring Nodes Suppression For route change from the source node –If the neighboring nodes apply RFD to route change, remote nodes do not need to apply RFD to the route change –After neighboring nodes apply RFD to route change, insert “Suppression Mark” in the Update –Downstream nodes do not apply RFD to Update with suppression mark For route change from the intermediate connection –Neighboring node of changing connection apply RFD to the route change –Insert “Suppression mark” in Update sending to downstream nodes

Invalid Routes Suppression Characteristics of invalid routes –The interval between successive invalid routes is MRAI –Maximal duration of path exploration is MRAI*n, n is the longest AS path –Route attributes, especially AS_PATH, are changed Process on Invalid routes – similar but different from RFD –Penalize attribute change more than Withdrawal –The penalty of routes which are not suppressed decays exponentially, with half life is MRAI –If a suppressed route keeps stable for k*MRAI, release the route –If suppressed routes changes, just reset the reuse timer, i.e. route is suppressed for constant time, k*MRAI, after the last change

Simulation – convergence time

Simulation – communication overhead

Simulation – partial deployment (1)

Simulation – partial deployment (2)

Thank you