Download presentation
Presentation is loading. Please wait.
Published byAlexzander Broomhall Modified over 9 years ago
1
10/04/2001 Associate Professor CS Department University of Valenciennes France Dhavy.gantsou@univ-valenciennes.fr Dr. Dhavy Gantsou
2
10/04/2001 Targeting Ada95/DSA for Distributed Simulation of Multiprotocol Networks
3
10/04/2001 Networking backgroung
4
10/04/2001 Today ’s network technologies are designed for a specific purpose
5
10/04/2001 n Standard IP network (internet) operates on a ’’best-effort’’ basis - treats all traffic equally - may discard packets may delay traffic mostly used to enable access to a wide range of non-IP applications for low speed legacy applications (ftp, e-mail, http, etc)
6
10/04/2001 n Switch technology networks (ATM, SONET/SDH, MPLS) for high-speed applications garantees : - Quality of Service (QoS) * Traffic engineering * Differentiated service levels - Predictability (Real-time) - Security
7
10/04/2001 n Switch technology networks (ATM, SONET/SDH, MPLS) Is now using standard Internet to provide access to non-IP applications (Voice, B2B, real-time video, etc)
8
10/04/2001 Majority of traffic IP-based Need for multiservice (multiprotocol) network
9
10/04/2001 multiservice network ? = Network infrastructure, suitable for the full range of standard Internet, as well as switch technology services.
10
10/04/2001 At the heart of a multiprotocol architecture is the ability of routing protocols to: deliver differentiated services deliver differentiated services satisfy security concerns satisfy security concerns garantee predictability (Real-time) garantee predictability (Real-time) Manage an ever-growing network Manage an ever-growing network
11
10/04/2001 Need for distributed real-time routing protocols or distributed real-time extended versions of existing protocols Implementation + simulation of prototypes
12
10/04/2001 Simulation ? n Conventional (batch) sequential sequential parallel (on shared memory platforms) parallel (on shared memory platforms) n Interactive sequential sequential on cluster of workstations (Distributed interactive Simulation ’’DIS’’) on cluster of workstations (Distributed interactive Simulation ’’DIS’’)
13
10/04/2001 DIS widely available platforms widely available platforms computing performance computing performance naturally express the real word network architecture naturally express the real word network architecture protocol software same as simulation code protocol software same as simulation code
14
10/04/2001 DIS : which middleware ? Requirements Requirements n Real-time n Reliability n Scalability n Security n Performance Middleware n MPI n Sockets n OO Middleware Java RMI CORBA Ada95 DSA
15
10/04/2001 Point-to-point LSI exchange in OSPF Protocol Open Shortest Path First R1 R2 R5 R3 R4
16
10/04/2001 Shared memory based LSI exchange R1 DR (R2)BDR(R5) R3 R4
17
10/04/2001 Building prototypes of object-based real-time distributed routing protocols n Identifying protocol entities n Modeling and implementing entities using suitable Ada95 and/or DSA constructs
18
10/04/2001 Case study DIS of the BGP4 Decision algorithm Principle of the decision algorithm When a BGP4 (Border Gateway Protocol version4) router receives updates from multiple AS, it must run the decision algorithm to choose the single best path for reaching a destination. Once choosen, BGP propagates the path to its neighbors
19
10/04/2001 BGP_R3 AS 200 AS 300 AS 400 AS 500 BGP_R5BGP_R4 BGP_R2 BGP_R7 BGP_R1 BGP_R6 AS 700 AS 100 AS 600 BGP Path selection
20
10/04/2001 Modeling & implementation
21
10/04/2001 Two kinds of distributed objects n Objects supporting general purpose of distributed object computing Remote_Call_Interface Partition Remote_Call_Interface Partition include a declaration of a RACW include a declaration of a RACW
22
10/04/2001 with Common, Interface; package Object_Adapter is pragma Remote_Call_Interface; Max_Devices : constant Positive := 15; --End Routers and Intermediary Routers Max_neighbors : constant Positive := Max_Devices; type Router_Class_Ref is access all Interface.Router_Class'Class; type Router_References is record Router_Ref : Router_Class_Ref ; hostname : Common.String_Host; end record; type References_List is array(Positive range <>) of Router_References; type Neighbor_Type is record Count : Natural := 0; List : References_List(1..max_neighbors) := (others => (null, (others => ' '))); end record; procedure Router_Registry(Data : in Router_Class_Ref; Is_router : in Boolean; Hostname : in Common.String_Host); function get_neighbor_list(hostname : in Common.String_Host) return Neighbor_Type; function get_link_array return Router_Link_List; end Object_Adapter; Object associating logical references to actual object implementation
23
10/04/2001 Two kinds of distributed objects n Objects dealing with the implementation of the protocol entities the protocol entities normal package normal package Pure, Pure, including the declaration of one class Remote_Types, or Remote_Types, or Shared_Passive categorized Partition Shared_Passive categorized Partition
24
10/04/2001 package Interface is pragma Pure; type Router_Class is abstract tagged limited private; type Community_Type is (no_export,no_advertise, internet); type Exchanged_Attributes is record As_Path : Positive; Origin : Common.String_Host; Next_Hop : Common.String_Host; Local_Preference : Natural; community : Community_Type; end record; procedure send (Data : access Router_Class; Update : in Exchanged_Attributes; Src_Hostname : in Common.String_Host) is abstract; procedure receive (Data : access Router_Class; Update : in Exchanged_Attributes) is abstract; Private type Router_Class is abstract tagged limited null record; end Interface ; Root class for all Router implementation
25
10/04/2001 with Common, Interface, Object_Adapter ; package Bgp_Isp_Router is type Bgp_Isp_Router_Class is new Interface.Router_Class with record hostname : Common.String_Host; neighbors : Object_Adapter.Neighbor_Type; end record; procedure send(Data : access Bgp_Isp_Router_Class; Update : in Interface.Exchanged_Attributes; Src_Hostname : in Common.String_Host); procedure receive(Data : access Bgp_Isp_Router_Class; Update : in Interface.Exchanged_Attributes); end Bgp_Isp_Router; Derived class BGP_ISP_Router
26
10/04/2001 Simulation :Working environment n Gnat-3.13p, ACT Ada95 compiler (free) n Glade-3.13p, ACT implementation of DSA (free) n A 100MB ethernet connecting: n 15 Sun UltraSPARCs running Solaris 2.6, n 1 Sun Enterprise running Solaris 2.7
27
10/04/2001 Simulation : Empirical test
28
10/04/2001 A ------------------------ usual running 1) From : ultraistv6 To : ultraistv9 Message : good Router [ultraistv6] -> Running decision algorithm... Router [ultraistv6] -> Send message through ultraistv4... BGP_Router [ultraistv9] -> Received message'good -> BGP_Router[ultraistv6] -> ISP[ultraistv4] ’ 2) >From : ultraistv6 To : ultraistv9 Message : HS Router [ultraistv6] -> Running decision algorithm... Router [ultraistv6] -> Send message through ultraistv4... BGP_Router [ultraistv9] -> Received message'HS -> BGP_Router[ultraistv6] -> ISP[ultraistv4]'
29
10/04/2001 B ---------------------------- unusual running Gnat@ultraistv4 : psd |grep ‘gantsou' 8 R gantsou 2261 2259 0 45 20 6085a1e0 146 19:21:14 pts/1 0:00 -csh 8 S gantsou 2250 1 0 41 20 60a381f0 375 ddd54 19:12:39 ? 0:00 /prof/gantsou/V4/bin/proxy1 --boot_ Gnat@ultraistv4 : kill -9 2250 3) >From : ultraistv6 To : ultraistv9 Message : Down Router [ultraistv6] -> Running decision algorithm... Router [ultraistv6] -> Send message through ultraistv4... Router failed ! (catch SYSTEM.RPC.COMMUNICATION_ERROR)
30
10/04/2001 4) >From : ultraistv6 To : ultraistv9 Message : restart Router [ultraistv6] -> Running decision algorithm... Router [ultraistv6] -> Send message through ultraistv4... Router failed ! (catch SYSTEM.RPC.COMMUNICATION_ERROR)
31
10/04/2001 >From : ultraistv6 To : ultraistv9 Message : Any change ? Router [ultraistv6] -> Running decision algorithm... Router [ultraistv6] -> Send message through ultraistv4... Router failed ! (catch SYSTEM.RPC.COMMUNICATION_ERROR) >From : ultraistv9 To : ultraistv6 Message : ISP2 down Router [ultraistv9] -> Running decision algorithm... Router [ultraistv9] -> Send message through ultraistv1... Router failed ! (catch SYSTEM.RPC.COMMUNICATION_ERROR)
Similar presentations
© 2025 SlidePlayer.com. Inc.
All rights reserved.