ISTI - Consiglio Nazionale delle Ricerche – Pisa – Italy 1 COST 285 Modelling and Simulation Tools for Research in Emerging Multi-service Telecommunications Francesco Potortì ISTI (Istituto di Scienza e Tecnologie dell’Informazione) CNR (Consiglio Nazionale delle Ricerche) Pisa – Italy ISTI - Consiglio Nazionale delle Ricerche – Pisa – Italy 2 Main scientific interests • Communication protocols, especially at the MAC level and transport level • Satellite multiple access protocols in TDMA mode • Countermeasures against the atmospheric fading of satellite signals • Mobile ad hoc networks with using 802.11 and Bluetooth protocols, especially at the MAC level • Quality of service on the Internet • TCP over satellite and terrestrial wireless • Simulation in all of the above topics • Characterisation of wireless channels (802.11, GPRS) ISTI - Consiglio Nazionale delle Ricerche – Pisa – Italy 3 Affiliation • ISTI (Istituto di Scienza e Tecnologie dell’Informazione) is part of the CNR (Consiglio Nazionale delle Ricerche) • It was born in Pisa, in 2002, as the result of a merger between CNUCE-CNR and IEI-CNR • I am a member of the Wireless Networking Group, composed of about 10 persons • I am currently involved into two research projects: – TANGO, an Italian research project aimed at multilayer, multiservice Internet networks – IS-MANET, an Italian research project aimed at mobile ad hoc networks in hostile environments • I promote the use of free software in research environments ISTI - Consiglio Nazionale delle Ricerche – Pisa – Italy 4 Simulation expertise • Implementation of MTG, an Ethernet traffic generator used to measure the performance of FODA/IBEA • Implementation and performance measurement of FODA/IBEA, a multiple-access satellite system • Implementation of fracas, a discrete-time simulator for framed access channels, and its use to evaluate the performance of several satellite access systems • Implementation of a fractal traffic generator • Implementation of GaliLEO, a prototypal event-driven simulator for LEO satellite systems • Analytical analysis of TCP over satellite channels ISTI - Consiglio Nazionale delle Ricerche – Pisa – Italy 5 Fracas the Framed Channel Access Simulator Francesco Potortì • A very specialised simulator for communications protocols written in standard C • Very small and very fast • Able to study the behaviour and the performance of multiple-access protocols, usually at the MAC level • Used until now for satellite channel access protocols • Provides unsophisticated but comprehensive statistics • Wrapper in Python for independent replications ISTI - Consiglio Nazionale delle Ricerche – Pisa – Italy 6 Scope of the simulation • Multiple-access methods that use a time-framed communications channel • In principle, usable for any such type of channel: the framed channel of FDDI2, but not FDDI, unless the time is artificially subdivided in frames, putting a lower boundary on time resolution • In practice, always used for geostationary satellite access • The core is very small, consequently – the access method can be as general as possible, with only the time frame constraint – programming is not easy, and requires knowledge of all the inner structures of the simulator ISTI - Consiglio Nazionale delle Ricerche – Pisa – Italy 7 General architecture generator worker Station 1 worker requester allocator generator statistics collector worker worker generator Station 2 worker generator worker generator generator allocation delay Station 3 generator Station 4 frame allocations Station Stat. Station 1 2 3 Station 4 ISTI - Consiglio Nazionale delle Ricerche – Pisa – Italy 8 Traffic generators • • • • Each produces a number of Transmission Units per frame Each generator is attached to a single station Any number of generators can be attached to a station Built-in generators include: – – – – – – two-state periodic fixed rate — can be used for one-shot two-state periodic Poisson — can be used for one-shot two-state Markov-modulated Poisson two-dimensional (NxM states) Markov-modulated models VBR traffic fractional Gaussian white noise models generic aggregate traffic specialised generators model batch interactive traffic ISTI - Consiglio Nazionale delle Ricerche – Pisa – Italy 9 The stations and the allocator • All traffic is expressed as the number of Transmission Units • TRUs are produced by generators, queued at the stations, and sent according to the allocations in the current frame • TRUs are not received; Fracas only simulates sending • For each frame, each station – – – – Queues traffic produced by attached generators Drops traffic exceeding the queue length Sends queued TRUs filling the allocation in the current frame Asks the allocator for allocation in a future frame • For each frame, the allocator sets up the allocation for the future frame as TRUs available to each station ISTI - Consiglio Nazionale delle Ricerche – Pisa – Italy 10 Emulator core loop do { frame_number += 1; for_all_stations_do { input = run_generators (this_station); queue += input; sent = min (queue, allocation); queue -= sent; request = compute_request (this_station); } compute_allocations (frame_number + allocation_delay); gather_statistics (frame_number); } while (! Stop_condition ()); run_workers_and_print_results (); ISTI - Consiglio Nazionale delle Ricerche – Pisa – Italy 11 Allocator policies • An allocator defines an allocation policy, which is an algorithm for computing the allocations for each station at a future frame based on their requests in the current frame • Built-in policies are those that we really used in simulation work; others may be added as necessary • Currently implemented policies: – – – – – – fixed TDMA: a fixed assignment to each station FODA/IBEA: developed at CNUCE, experimented with a prototype VnL-DA: VBR allocation developed at CNUCE FEEDERS: distributed allocation scheme developed at CNUCE DRIFS : distributed allocation scheme developed at CNUCE CFRA: developed at ENST - Toulouse (FR) ISTI - Consiglio Nazionale delle Ricerche – Pisa – Italy 12 Output statistics • At each frame, several observables are collected • Each worker computes a different statistics on one or more observables, including: – TRUs input, queued, dropped, allocated, requested, sent by stations – allocation unused by stations – transmission delay, either per frame or per TRU • Some workers produce their results at emulation time • Others produce a result at the end of the emulation • A Python wrapper around Fracas is used to obtain estimates of a statistics inside a given confidence interval using independent replications of the same emulator run ISTI - Consiglio Nazionale delle Ricerche – Pisa – Italy 13 Classes of traffic • Fracas distinguishes among four different classes of traffic, hierarchically ordered as follows: stream, vbr, interactive, bulk, whose names reflect their supposed usage • When emptying the station queues, the simulation core starts from stream, and gives any unused allocation to lower-grade traffic classes • Usage of the classes is optional; possibilities include: – gathering statistics for traffic generated in different classes – defining different allocation policies for each class • Use of classes enables the definition of complex allocation strategies ISTI - Consiglio Nazionale delle Ricerche – Pisa – Italy 14 Fracas summary Francesco Potortì • A lightweight, portable simulator specialised for the study of multiple-access allocation schemes • Traffic generators, allocation policies and statistics computations can each be added as separate modules • Many built-in modules are implemented and have been used in research work • Fracas has been validated by checking against a prototypal implementation of the FODA/IBEA allocation algorithm • A paper on the architecture of Fracas has been published on Telecommunications Systems in 1999 ISTI - Consiglio Nazionale delle Ricerche – Pisa – Italy 15 GaliLEO progress report Laurent Franck and Francesco Potortì • A comprehensive simulator for satellite constellations, targeted towards LEO/MEO communication systems • Experience from previous projects (SimToc, LeoSim, Fracas), involves different academic institutions • Free software entirely implemented in Java • Possible studies include: – algorithms for cell frequency reuse – QoS routing for both UDL and ISL – QoS aware channel access techniques ISTI - Consiglio Nazionale delle Ricerche – Pisa – Italy 16 Capacity of global coverage • Emulation of an entire constellation • Definition of individual earth stations and traffic generators • Complete map of traffic patterns • Ability to individually follow any traffic connection ISTI - Consiglio Nazionale delle Ricerche – Pisa – Italy 17 Study of a limited region • Emulation over a limited geographical region • Detailed and realistic traffic generation – complex access techniques – complex frequency reuse strategies • Nearby network simulated by mathematical description ISTI - Consiglio Nazionale delle Ricerche – Pisa – Italy 18 Basic terminology • A UDL (up-down link) covers a satellite’s footprint • A UDL is made of beams, each covering partially overlapping cells • Satellites are connected by ISLs • A station is fed by one or more traffic generators ISTI - Consiglio Nazionale delle Ricerche – Pisa – Italy 19 Architecture of GaliLEO • An event scheduler is at the core of the simulation engine • The core modules come with the simulator • Custom modules can be added at will • Custom modules include traffic generators, constellation layouts, access protocols etc. ISTI - Consiglio Nazionale delle Ricerche – Pisa – Italy The two inner layers • The simulation engine provides – – – – the event scheduler the framework for building modules the communications facility between modules the input file structure, statistics gathering and display facility • The standard modules provide some basic features: – – – – – – a Leonet and a polar constellation a deterministic periodical traffic generator scalar resources for allocation in stations and satellites simple routing and load-dependent adaptive routing basic allocation strategies for stations and satellites basic station and satellite structures 20 ISTI - Consiglio Nazionale delle Ricerche – Pisa – Italy The simulation engine 21 ISTI - Consiglio Nazionale delle Ricerche – Pisa – Italy 22 Demo setup • • • • • 12 stations evenly distributed between 45°N and 45°S Leonet constellation (15 satellites on 3 orbits) ISL capacity is 20 connections, UDL’s is 80 connections Measuring the connection blocking probability For each connection, the first and last satellites are those with max elevation • The demo is made of three steps, global traffic is the same for all steps: – 6 Erlangs per station, static routing – 4 adjacent stations at 10 Erlangs, others at 4 Erlangs, static routing – same traffic as previous case, adaptive routing ISTI - Consiglio Nazionale delle Ricerche – Pisa – Italy Demo results 23 ISTI - Consiglio Nazionale delle Ricerche – Pisa – Italy 24 GaliLEO summary Laurent Franck and Francesco Potortì • A big simulator for LEO/MEO communication systems • Both overall earth view and geographically limited studies are considered • Very modular; standard modules available, custom modules written in Java can be added • Programming environment is Java • Work in progress: development is open to contributions • Some features usable today for research: demo available • Home page at http://galileo.tesa.prd.fr/