10/04/2001 associate professor cs department university of valenciennes france...

31
10/04/2001 Associate Professor CS Department University of Valenciennes Fran ce [email protected] Dr. Dhavy Gantsou Dr. Dhavy Gantsou

Upload: alexzander-broomhall

Post on 14-Dec-2015

216 views

Category:

Documents


2 download

TRANSCRIPT

Page 1: 10/04/2001 Associate Professor CS Department University of Valenciennes France Dhavy.gantsou@univ-valenciennes.fr Dr. Dhavy Gantsou

10/04/2001

Associate Professor

CS Department University of Valenciennes

France

[email protected]

Dr. Dhavy GantsouDr. Dhavy Gantsou

Page 2: 10/04/2001 Associate Professor CS Department University of Valenciennes France Dhavy.gantsou@univ-valenciennes.fr Dr. Dhavy Gantsou

10/04/2001

Targeting Ada95/DSA Targeting Ada95/DSA for Distributed for Distributed Simulation of Simulation of

Multiprotocol NetworksMultiprotocol Networks

Page 3: 10/04/2001 Associate Professor CS Department University of Valenciennes France Dhavy.gantsou@univ-valenciennes.fr Dr. Dhavy Gantsou

10/04/2001

Networking backgroungNetworking backgroung

Page 4: 10/04/2001 Associate Professor CS Department University of Valenciennes France Dhavy.gantsou@univ-valenciennes.fr Dr. Dhavy Gantsou

10/04/2001

Today ’s network technologies aredesigned for a specific purpose

Page 5: 10/04/2001 Associate Professor CS Department University of Valenciennes France Dhavy.gantsou@univ-valenciennes.fr Dr. Dhavy Gantsou

10/04/2001

Standard IP network (internet)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)

Page 6: 10/04/2001 Associate Professor CS Department University of Valenciennes France Dhavy.gantsou@univ-valenciennes.fr Dr. Dhavy Gantsou

10/04/2001

Switch technology networks (ATM, Switch technology networks (ATM, SONET/SDH, MPLS)SONET/SDH, MPLS)

• for high-speed applications• garantees :

- Quality of Service (QoS)* Traffic engineering* Differentiated service levels

- Predictability (Real-time)

- Security

Page 7: 10/04/2001 Associate Professor CS Department University of Valenciennes France Dhavy.gantsou@univ-valenciennes.fr Dr. Dhavy Gantsou

10/04/2001

Switch technology networks (ATM, Switch technology networks (ATM, SONET/SDH, MPLS)SONET/SDH, MPLS)

Is now using standard Internet to provide access to non-IP applications (Voice, B2B,real-time video, etc)

Page 8: 10/04/2001 Associate Professor CS Department University of Valenciennes France Dhavy.gantsou@univ-valenciennes.fr Dr. Dhavy Gantsou

10/04/2001

Majority of traffic IP-basedMajority of traffic IP-basedNeed for multiservice (multiprotocol) Need for multiservice (multiprotocol)

network network

Page 9: 10/04/2001 Associate Professor CS Department University of Valenciennes France Dhavy.gantsou@univ-valenciennes.fr Dr. Dhavy Gantsou

10/04/2001

multiservice network ?

=

Network infrastructure, suitable for the full range of standard Internet, as well as switch technology services.

Page 10: 10/04/2001 Associate Professor CS Department University of Valenciennes France Dhavy.gantsou@univ-valenciennes.fr Dr. Dhavy Gantsou

10/04/2001

At the heart of a multiprotocol architecture is the ability of routing protocols to:

• • deliver differentiated servicesdeliver differentiated services

•• satisfy security concernssatisfy security concerns

• • garantee predictability garantee predictability (Real-time) (Real-time)

• • Manage an ever-growing networkManage an ever-growing network

Page 11: 10/04/2001 Associate Professor CS Department University of Valenciennes France Dhavy.gantsou@univ-valenciennes.fr Dr. Dhavy Gantsou

10/04/2001

Need for distributed real-time routing Need for distributed real-time routing protocols protocols

or ordistributed real-time extended versions of distributed real-time extended versions of existing protocols existing protocols

Implementation + simulation of prototypes

Page 12: 10/04/2001 Associate Professor CS Department University of Valenciennes France Dhavy.gantsou@univ-valenciennes.fr Dr. Dhavy Gantsou

10/04/2001

Simulation ?Simulation ? Conventional (batch)Conventional (batch)

• • sequentialsequential• • parallel (on shared memory parallel (on shared memory

platforms)platforms) Interactive Interactive

• • sequentialsequential • • on cluster of workstations (Distributed on cluster of workstations (Distributed

interactive Simulation ’’DIS’’)interactive Simulation ’’DIS’’)

Page 13: 10/04/2001 Associate Professor CS Department University of Valenciennes France Dhavy.gantsou@univ-valenciennes.fr Dr. Dhavy Gantsou

10/04/2001

DISDIS

• • widely available platforms widely available platforms

• • computing performancecomputing performance

• • naturally express the real word naturally express the real word network architecturenetwork architecture

• • protocol software same as simulation protocol software same as simulation codecode

Page 14: 10/04/2001 Associate Professor CS Department University of Valenciennes France Dhavy.gantsou@univ-valenciennes.fr Dr. Dhavy Gantsou

10/04/2001

DIS : which middleware ?DIS : which middleware ?

RequirementsRequirements Real-timeReal-time ReliabilityReliability ScalabilityScalability SecuritySecurity PerformancePerformance

MiddlewareMiddleware MPIMPI SocketsSockets OO MiddlewareOO Middleware

• • Java RMIJava RMI• • CORBACORBA• • Ada95 DSAAda95 DSA

Page 15: 10/04/2001 Associate Professor CS Department University of Valenciennes France Dhavy.gantsou@univ-valenciennes.fr Dr. Dhavy Gantsou

10/04/2001

Point-to-point LSI exchange in OSPF Protocol

Open Shortest Path First

R1 R2

R5

R3

R4

Page 16: 10/04/2001 Associate Professor CS Department University of Valenciennes France Dhavy.gantsou@univ-valenciennes.fr Dr. Dhavy Gantsou

10/04/2001

Shared memory based Shared memory based LSI exchange LSI exchange

R1 DR (R2) BDR(R5)

R3

R4

Page 17: 10/04/2001 Associate Professor CS Department University of Valenciennes France Dhavy.gantsou@univ-valenciennes.fr Dr. Dhavy Gantsou

10/04/2001

Building prototypes of object-based Building prototypes of object-based real-time distributed routing real-time distributed routing protocolsprotocols

Identifying protocol entities Identifying protocol entities

Modeling and implementing entities Modeling and implementing entities using suitable Ada95 and/or DSA using suitable Ada95 and/or DSA constructsconstructs

Page 18: 10/04/2001 Associate Professor CS Department University of Valenciennes France Dhavy.gantsou@univ-valenciennes.fr Dr. Dhavy Gantsou

10/04/2001

Case studyCase studyDIS of the BGP4 Decision DIS of the BGP4 Decision

algorithmalgorithm 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

Page 19: 10/04/2001 Associate Professor CS Department University of Valenciennes France Dhavy.gantsou@univ-valenciennes.fr Dr. Dhavy Gantsou

10/04/2001

BGP_R3

AS 200

AS 300

AS 400

AS 500BGP_R5 BGP_R4

BGP_R2

BGP_R7BGP_R1

BGP_R6

AS 700AS 100

AS 600

BGP Path selection

Page 20: 10/04/2001 Associate Professor CS Department University of Valenciennes France Dhavy.gantsou@univ-valenciennes.fr Dr. Dhavy Gantsou

10/04/2001

Modeling & Modeling & implementationimplementation

Page 21: 10/04/2001 Associate Professor CS Department University of Valenciennes France Dhavy.gantsou@univ-valenciennes.fr Dr. Dhavy Gantsou

10/04/2001

Two kinds of distributed Two kinds of distributed objectsobjects

Objects supporting general purpose Objects supporting general purpose of distributed object computingof distributed object computing

• • Remote_Call_Interface Remote_Call_Interface PartitionPartition

•• include a declaration of a RACWinclude a declaration of a RACW

Page 22: 10/04/2001 Associate Professor CS Department University of Valenciennes France Dhavy.gantsou@univ-valenciennes.fr Dr. Dhavy Gantsou

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

Page 23: 10/04/2001 Associate Professor CS Department University of Valenciennes France Dhavy.gantsou@univ-valenciennes.fr Dr. Dhavy Gantsou

10/04/2001

Two kinds of distributed Two kinds of distributed objectsobjects

Objects dealing with the implementation ofObjects dealing with the implementation of the protocol entitiesthe protocol entities

• • normal package normal package

• • Pure ,Pure ,

including the declaration of one class including the declaration of one class

• • Remote_Types, orRemote_Types, or

• • Shared_Passive categorized Shared_Passive categorized PartitionPartition

Page 24: 10/04/2001 Associate Professor CS Department University of Valenciennes France Dhavy.gantsou@univ-valenciennes.fr Dr. Dhavy Gantsou

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

Page 25: 10/04/2001 Associate Professor CS Department University of Valenciennes France Dhavy.gantsou@univ-valenciennes.fr Dr. Dhavy Gantsou

10/04/2001

with Common, Interface, Object_Adapter ;

package Bgp_Isp_Router istype 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

Page 26: 10/04/2001 Associate Professor CS Department University of Valenciennes France Dhavy.gantsou@univ-valenciennes.fr Dr. Dhavy Gantsou

10/04/2001

Simulation :Working Simulation :Working environmentenvironment

Gnat-3.13p , ACT Ada95 compiler (free)Gnat-3.13p , ACT Ada95 compiler (free)

Glade-3.13p, ACT implementation of DSA Glade-3.13p, ACT implementation of DSA (free)(free)

A 100MB ethernet connecting:A 100MB ethernet connecting: 15 Sun UltraSPARCs running Solaris 2.6,15 Sun UltraSPARCs running Solaris 2.6, 1 Sun Enterprise running Solaris 2.71 Sun Enterprise running Solaris 2.7

Page 27: 10/04/2001 Associate Professor CS Department University of Valenciennes France Dhavy.gantsou@univ-valenciennes.fr Dr. Dhavy Gantsou

10/04/2001

Simulation : Empirical testSimulation : Empirical test

Page 28: 10/04/2001 Associate Professor CS Department University of Valenciennes France Dhavy.gantsou@univ-valenciennes.fr Dr. Dhavy Gantsou

10/04/2001

A ------------------------ usual running1) From : ultraistv6 To : ultraistv9Message : goodRouter [ultraistv6] -> Running decision algorithm...Router [ultraistv6] -> Send message through ultraistv4...BGP_Router [ultraistv9] -> Received message'good -> BGP_Router[ultraistv6] -> ISP[ultraistv4] ’2)>From : ultraistv6To : ultraistv9Message : HS Router [ultraistv6] -> Running decision algorithm...Router [ultraistv6] -> Send message through ultraistv4...BGP_Router [ultraistv9] -> Received message'HS -> BGP_Router[ultraistv6] -> ISP[ultraistv4]'

Page 29: 10/04/2001 Associate Professor CS Department University of Valenciennes France Dhavy.gantsou@univ-valenciennes.fr Dr. Dhavy Gantsou

10/04/2001

B ---------------------------- unusual runningGnat@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 : ultraistv6To : ultraistv9Message : Down Router [ultraistv6] -> Running decision algorithm...Router [ultraistv6] -> Send message through ultraistv4...Router failed ! (catch SYSTEM.RPC.COMMUNICATION_ERROR)

Page 30: 10/04/2001 Associate Professor CS Department University of Valenciennes France Dhavy.gantsou@univ-valenciennes.fr Dr. Dhavy Gantsou

10/04/2001

4)>From : ultraistv6To : ultraistv9Message : restart Router [ultraistv6] -> Running decision algorithm...Router [ultraistv6] -> Send message through ultraistv4...Router failed ! (catch SYSTEM.RPC.COMMUNICATION_ERROR)

Page 31: 10/04/2001 Associate Professor CS Department University of Valenciennes France Dhavy.gantsou@univ-valenciennes.fr Dr. Dhavy Gantsou

10/04/2001

>From : ultraistv6To : ultraistv9Message : Any change ?Router [ultraistv6] -> Running decision algorithm...Router [ultraistv6] -> Send message through ultraistv4...Router failed ! (catch SYSTEM.RPC.COMMUNICATION_ERROR)

>From : ultraistv9To : ultraistv6Message : ISP2 downRouter [ultraistv9] -> Running decision algorithm...Router [ultraistv9] -> Send message through ultraistv1...Router failed ! (catch SYSTEM.RPC.COMMUNICATION_ERROR)