MTP3 - Aalto

Download Report

Transcript MTP3 - Aalto

TOVE 3.2.1999
HUT/TML
TOIMIALAVERKOT (TOVE)
Communications Platform
Project Group
Vesa-Matti Puro
1
TOVE 3.2.1999
HUT/TML
TOVE Project Group
• Professor Olli Martikainen
• Vesa-Matti Puro, project
management
• Jari Katajavuori: PF and UNI,
1997-1998
• Timo Kokkonen, CODERS and
DEBUG, 1998
• Petteri Koponen: VE, 1996
• Pasi Nummisalo: CC, DCF,
INGW, Java SCP, and PF, 19961998
• Timo Pärnänen: GUI, ILMI,
MTP3, PF, SCCP, SWITCH
and TCAP, 1996-1998
• Sami Raatikainen: BISUP and
PF, 1998
• Pasi Rautiainen
• Juhana Räsänen: SSCOP, SF
and NNI-SSCF, 1996
• Harri Sunila: GSMP and TRS,
1997-1998
• Jussi Turunen, SSCOP and
testing, 1998
• Samu Uimonen: CODERS
• Saku Vaittinen: CODERS
2
TOVE 3.2.1999
HUT/TML
TOIMIALAVERKOT (TOVE)
Communications Platform
Introduction
Vesa-Matti Puro
3
TOVE 3.2.1999
HUT/TML
4
TOVE Project
• Helsinki University of Technology, Telecommunications
Software and Multimedia Laboratory (TML)
• Professor Olli Martikainen, Network Architectures
• A three years long research project (communications platform
part of the project) to develop open and standard based
infrastructure for future broadband networks
• Create a platform for developing and testing distributed call and
connection control model in B-ISDN networks
• VTT provides FSR switching hardware to the project
• Funded by TEKES and industry partners: HPY, Nixu, Nokia,
OES, Sonera, Tecnomen, Telia and X-Net.
TOVE 3.2.1999
HUT/TML
Goal 1996
• The aim for 1996 is to build a working ITU-T
BISDN signalling stack on top of VTT’s FSR
switch
“UNI” side of the protocols is
for User-to-Network Interface
Call Control
Switch
control
Q.2931
UNI SSCF
BISUP
MTP-3
NNI SSCF
SSCOP
“NNI” side is the interface
between network elements
Call Control manages all
active connections in the
switch
API
CPCS / SAR
Switching
hardware
5
TOVE 3.2.1999
HUT/TML
ATM Switch Control
ATM Switch
ATM Switch Controller
Nodes
6
TOVE 3.2.1999
HUT/TML
Control Abstractions
Service Control (INAP, CORBA, IDL, Java)
Call Control
Access : Q.2931
Connection Control
Internal : BISUP
(switch/port config., port mgmt,
conn. mgmt, statistics, event messages)
Node Control
Switch Control Fabric Control (GSMP, etc.)
Fabric Control Agent
FSR
7
TOVE 3.2.1999
HUT/TML
8
Results 1996
• Results were distributed march 97 (release 97/1)
• ATM virtual switch software consisting
–
–
–
–
–
–
–
call control (CC)
Q.2931
SSCOP
Switch
control
UNI-SSCF
NNI-SSCF
API
FSR Virtual Exchange (VE)
BISUP is missing from 97/1 release
Call Control
Q.2931
UNI SSCF
BISUP
MTP-3
NNI SSCF
SSCOP
CPCS / SAR
Switching
hardware
TOVE 3.2.1999
HUT/TML
Demonstration 1996
VAT (in Linux PC)
Switch Controller
with TOVE Linux Q.2931
VAT (in PC)
FSR Switching Fabric
controlled using FSR API
VAT = Audio Conferencing tool (www-nrg.ee.lbl.gov/vat)
9
TOVE 3.2.1999
HUT/TML
Goal 1997
• Major goals are IN-Gateway and UNI Framework
• IN-Gateway includes: IN triggers, modifications
of Call Control, INAP translations, TCAP, SCCP
and MTP3
• UNI Framework consists of UNI 3.1 and Q.2931
• Other goals: further development of OVOPS++,
integration of CORBA OmniBroker ORB to
OVOPS++
• GSMP (General Switch Management Protocol)
1
0
TOVE 3.2.1999
HUT/TML
TOVE IN Interface
Control requests
CORBA interface
Call Control
Triggers
Controller PC
ATM connection
Service workstations
to the FSR cluster
11
TOVE 3.2.1999
HUT/TML
1
2
Demonstration 1997
SCP
Switch Controller
VIC (in PC)
with Linux ATM 0.34
VIC (in PC)
FSR Switching Fabric
controlled using open GSMP
TOVE 3.2.1999
HUT/TML
1
3
Goal 1998
• New features to old modules: switch
framework and error handling
• Finishing, reviews, commenting
• Testing: interfaces and corrections
• New modules: INGW, routing and management
• Pilot applications and services
TOVE 3.2.1999
HUT/TML
TOVE Switch Architecture
• MAIN = CAC + MIB +
CC + protocols
• GUI: configuration
• LOG: OMG log not
implemented
• RT: routing
• IN: INGW
• ILMI/SNMP:
management
• FCF: fabric control
• NS/ES: CORBA
Services
MAIN
NM
GUI
IN
LOG
L
RT
R
IN
IN
CORBA
SNMP
ILMI
FCF
NS
ES
1
4
TOVE 3.2.1999
HUT/TML
Modules Implemented
• PF, framework for network programming
• GUI, graphical user interface for switch configuration
• SWITCH, implements the structure of the switch (ports /
links) and encapsulates the switching fabric details (NB /
BB)
• TRS, hierarchical routing following PNNI model
• ILMI, management interface, address registration
• CC, call control containing triggers and IN interface
• DCF & SCP & INGW, hierarchical component based user
interface, excecution environment for IN services and
CORBA-to-INAP -gateway
1
5
TOVE 3.2.1999
HUT/TML
TOVE Protocols
TOVE Call Control
FCF
UNI 3.1
(Q.2931/
UNI 4.0)
INGW
TCAP
BISUP
SCCP
MTP-3
GSMP
UNI-SSCF
NNI-SSCF
SSCOP
OVOPS++ with CORBA
Linux ATM API + ATM Card (CPCS / SAR)
GSMP
ATM Switching
hardware
1
6
TOVE 3.2.1999
HUT/TML
Protocols Implemented
• SSCOP, ITU-T Q.2110, full, working, tested
• UNI-SSCF, ITU-T Q.2130, full, working, tested
• UNI 3.1, ATM Forum UNI 3.1, partial, working
with Linux and ForeRunnerLE 100 -switch
• MTP3, partial
• NNI-SSCF, full
• BISUP, partial
• SCCP/TCAP, partial
• GSMP, partial
1
7
TOVE 3.2.1999
HUT/TML
TOVE Project 1997-1999
• First year
– Q.2931 signaling, CC, FSR API fabric control
– works with project’s own Linux signalling
• Second year
– UNI 3.1 signaling, GSMP fabric control, Java SCP
– works with Linux atm 0.31 UNI 3.1 signaling
• Third year
– UNI 3.1 p-mp, BISUP prototype, Switch FW,
Interworking CC prototype, ILMI, routing, GUI, DCF,
INGW, Java SCP
– works with Linux atm 0.47 UNI 3.1 signaling and Fore
1
8
TOVE
1
9
Summary
• Gained considerable experience of O-O,
Frameworks, network programming and B-ISDN
• TOVE switch provides a prototype of standard
based ATM signalling software with open
switching fabric (GSMP) and service control
(INAP)
• The IN Gateway is one of the first
implementations of CORBA to IN adapters using
generic ROSE translation
TOVE 3.2.1999
HUT/TML
TOIMIALAVERKOT (TOVE)
Communications Platform
Methods, tools and environment
Vesa-Matti Puro
2
0
TOVE 3.2.1999
HUT/TML
Methods
•
•
•
•
•
•
Object-oriented Modeling
Design Patterns
Technical Reviews
C++ Programming Language
Java Programming Language
CORBA Object Request Broker
2
1
TOVE 3.2.1999
HUT/TML
Tools
• OVOPS++ pf/sf Frameworks (Protocol
Framework/Scheduling Framework)
• ORBacus 3.0.1 C++ and Java ORBs (www.ooc.com) and
JTC-1.0.3
• egcs 1.0.2 C++ Compiler
• STL (Standard Template Library) part of egcs
• SUN JDK 1.1.6 (Java Development Kit)
• Borland JBuilder 2
• SUN Swing 1.0.3
• ObjectStore PSE Pro 2.0 (www.odi.com)
2
2
TOVE 3.2.1999
HUT/TML
Methods and Tools in Concert
Protocol e.g. DSS2, UNI 3.1, UNI 4.0
• C++
– RTTI, Exceptions, ...
Switch Framework
• STL
UNI Framework
Design Patterns
PF
– Data structures
– Algorithms
SF
STL
• Design Patterns
ORB
– Reusable designs
Services
• CORBA integration
Drivers
– CORBA Services
2
3
TOVE
2
4
OVOPS++
• OVOPS ++ (Object Virtual OPerating
System ++) frameworks
– consists of pf (Protocol Framework) and sf
(Scheduling Framework)
– based on Conduits+ by University of Illinois
– Conduits+ was used by ASCOM Tech AG
– contains general reusable protocol components
TOVE 3.2.1999
HUT/TML
2
5
OVOPS++ Main Components
A
M
T
P
M
F
P
P
M
T
P
S
A
S
•Adapter: Connects OVOPS++ world
to the “outer world”
•Protocol: Context of the protocol
(state variables, parameters etc.)
•State: Functionality of the protocol
•Mux: Multiplexes connections by
session keys extracted from the
message
•Factory: Creates new Conduit
instances
•Transporters: Travels through
conduit graph
•Messengers: Carries data
•Timers: Provides timeouts
•Scheduler: Gives runtime
TOVE 3.2.1999
HUT/TML
Development of OVOPS++
DUITS
Design Patterns
Conduits
Conduits+
OVOPS++
JVOPS
OVOPS
CVOPS
2
6
TOVE 3.2.1999
HUT/TML
Environment
• HP PCs w/75Mhz Pentium to 450Mhz PII
• Linux RedHat 5.2 and kernel 2.1.117 (for SSP /
C++)
• ATM on Linux 0.47
• NT Server/Workstation 4.0 (for SCP / Java)
• VTT FST 4 x 155 Mbit/s STM-1 MMF
• ForeRunnerLE 155 155 4 x MMF 8 x UTP
2
7
TOVE 3.2.1999
HUT/TML
TOIMIALAVERKOT (TOVE)
Communications Platform
Software and protocol architecture
Timo Pärnänen
Harri Sunila
2
8
TOVE 3.2.1999
HUT/TML
TOVE architecture
SNMP
ILMI
LOG
RT
IN
NS
ES
CORBA
GUI
SW
FCF
2
9
TOVE 3.2.1999
HUT/TML
Protocols
TOVE Call Control
FCF
UNI 3.1
(Q.2931/
UNI 4.0)
INGW
TCAP
BISUP
SCCP
MTP-3
GSMP
UNI-SSCF
NNI-SSCF
SSCOP
CPCS adapter
Linux ATM API + ATM Card (CPCS / SAR)
GSMP
ATM Switching
hardware
3
0
TOVE 3.2.1999
HUT/TML
SWITCH
CORBA
ROUTING
CONFIG
SNMP
ILMI
GSMP
SWITCH
PORT
FCF
SS7
STACK
PROTOTYPES
MUXES
ETC. COMMON
PORT
FACTORY
LINK
3
1
TOVE 3.2.1999
HUT/TML
GUI
3
2
TOVE 3.2.1999
HUT/TML
FCF
• The Fabric Control Functions (FCF) is used to hide
switching functions (fabric) from call procedures
• ATM FCF uses GSMP to control fabric
Call Control
Connect
ATM
FCF
GSMP
VPI/VCI
SWITCH
NB
FCF
TimeSlot
E1
A
P
I
3
3
TOVE 3.2.1999
HUT/TML
ILMI / SNMP
• Integrated (Interim) Local Management Interface (ILMI)
• Provides status and configuration information using the
Simple Network Management Protocol (SNMP) and an
ATM Interface Management Information Base (MIB)
• Virtual Path/Channel Connections
• Address registration
ILMI
NMS
SNMP
SNMP
ILMI
3
4
TOVE 3.2.1999
HUT/TML
ILMI / SNMP
Managed Open System
OPERATIONS
CORBA
NOTIFICATIONS
SNMP
SNMP
AGENT
OPERATIONS
NOTIFICATIONS
OPERATIONS
Q3
OSI/TMN
AGENT
NOTIFICATIONS
OPERATIONS
Proprietary
Proprietary
AGENT
NOTIFICATIONS
Managed and
Support Object
3
5
TOVE 3.2.1999
HUT/TML
TOVE Route Service
• Based on
– ATM Forum PNNI 1.0 Specification
• Management of routing information
3
6
TOVE 3.2.1999
HUT/TML
Services Provided
•
•
•
•
Routing information management
Hierarchical routing
Route information for Call control
Routing information exchanging
(not implemented)
3
7
TOVE 3.2.1999
HUT/TML
Services Used
• Distribution of routing databases with
CORBA
• PSE Pro object database for network
topology information
3
8
TOVE 3.2.1999
HUT/TML
Implementation Structure
Call control
swSwitch
Routing client
TOVE Route
Server
Management
client
3
9
TOVE 3.2.1999
HUT/TML
Implemented features
• Hierarchical routing
– Peer groups
– Distribution of routing servers
• Static routing information
4
0
TOVE 3.2.1999
HUT/TML
GSMP Overview
• Based on
– RFC 1987
• Controlling of the switching fabric
– connection establishment and teardown
– configuration management
– statistics information
4
1
TOVE 3.2.1999
HUT/TML
Services Provided for FCF
• Connection establishment, teardown and
modifying
• Switching fabric configuration information
• Switching fabric configuration setup
• Switching fabric statistics information
• Notifications of asynchronous events
4
2
TOVE 3.2.1999
HUT/TML
Services Used
• Provided by CPCS
• DATA request/indication
4
3
TOVE 3.2.1999
HUT/TML
Implementation Structure
FCF
Connection Configuration
Event
management management management
Factory
GSMP
Adjacency
protocol
CPCS
4
4
TOVE 3.2.1999
HUT/TML
Implemented features
• Adjacency protocol
– RFC 1987
– Synchronization error in specification fixed
• GSMP
–
–
–
–
RFC 1987
Connection management
Configuration management
Events
4
5
TOVE 3.2.1999
HUT/TML
TOIMIALAVERKOT (TOVE)
Communications Platform
Protocol implementations
Sami Raatikainen
Project Group
4
6
TOVE 3.2.1999
HUT/TML
4
7
Protocol Presentations
Jari Katajavuori
UNI 3.1
Sami Raatikainen
TCAP
BISUP
SCCP
MTP-3
UNI-SSCF
NNI-SSCF
SSCOP
CPCS
Jussi Turunen
Timo Pärnänen
TOVE 3.2.1999
HUT/TML
Protocol Stack
Protocols - Interfaces
• downPrimitives (request/response)
• upPrimitives (indication/confirm)
CALL CONTROL
SIGIF
UNI 3.1
UAALIF
UNI-SSCF
PROTOCOL (n)
IFACE (n-1)
AAIF
SSCOP
CPCSIF
PROTOCOL (n-1)
CPCS
4
8
TOVE 3.2.1999
HUT/TML
SAAL
• SAAL (Signalling ATM Adaptation Layer,
specified in Q.2100)
• used by signalling applications
• USSCF/NSSCF, SSCOP, CPCS, AAL5
• Service Specific Part and Common Part
• The purpose of SAAL is to convey
information across UNI and NNI
4
9
TOVE 3.2.1999
HUT/TML
SAAL
UNI/NNI
SSCS
UNI/NNI-SSCF
SSCOP
CPCS
CS
SAR
ATM
5
0
TOVE 3.2.1999
HUT/TML
5
1
CPCS
• Common Part Convergence Sub-layer
(specified in I.363)
• Doesn’t vary with the type of traffic being
sent
• Uses AAL5 service provided by Linux ATM
• Uses Linux ATM API to access NIC
TOVE 3.2.1999
HUT/TML
SSCOP
• Service Specific Connection-Oriented
Protocol (specified in Q.2110)
• Data-link layer protocol
• Offers both assured and unassured data
transfer service for upper layer
• Can be used with different SSCFs
5
2
TOVE 3.2.1999
HUT/TML
SSCOP Service
• Provides:
–
–
–
–
–
–
–
Sequence Integrity
Error Correction
Flow Control
Keep Alive
Local Data Retrieval
Connection Control
Status Reporting
5
3
TOVE 3.2.1999
HUT/TML
UNI-SSCF
• Service Specific Coordination Function at
UNI (specified in Q.2130)
• Performs a coordination function between
the service required by Layer 3 signalling
function and the service provided by
SSCOP
• Used by UNI and Q.2931
5
4
TOVE 3.2.1999
HUT/TML
UNI-SSCF Service
•
•
•
•
Unacknowledged transfer of data
Assured transfer of data
Transparency of transferred information
Establishment and release of SAAL
Connections
5
5
TOVE 3.2.1999
HUT/TML
NNI-SSCF
• Service Specific Coordination Function at
NNI (specified in Q.2140)
• Performs a coordination function between
the service required by Layer 3 signalling
function and the service provided by
SSCOP
• Used by MTP-3
5
6
TOVE 3.2.1999
HUT/TML
NNI-SSCF Service
• Assured transfer of data
• Transparency of transferred information
• Establishment and release of SAAL
Connections
• SDU retrieval
• Signalling link error monitoring
• Flow control
5
7
TOVE 3.2.1999
HUT/TML
UNI Overview
• Based on
– The ATM-Forum UNI 3.1 Specification
– ITU-T Q.2931 Recommendation
• OSI layer 3 Functionality
5
8
TOVE 3.2.1999
HUT/TML
Services Provided for CC
• Point-to-point Call Setup / Clearing
• Point-to-multipoint Call Setup / Clearing /
Party control
• SAAL connection control
• Error control
• Reset (not implemented)
5
9
TOVE 3.2.1999
HUT/TML
Services Used
•
•
•
•
Provided by SAAL UNI-SSCF
DATA request/indication
ESTABLISH request/indication/confirm
RELEASE request/indication/confirm
6
0
TOVE 3.2.1999
HUT/TML
Implementation Structure
UNI
UNI
MUX
COORD
RSN
RRN
6
1
TOVE 3.2.1999
HUT/TML
6
2
Setup Sequence
C
a
l
l
i
n
g
SETUPpdu
CALL PROC.pdu
U
N
I
SETUPind
C
C
SETUPreq
U
N
I
SETUPpdu
PROCEEDINGreq
CALL PROC.pdu
PROCEEDINGind
CONNECTpdu
SETUPconf
SETUPresp
CONNECTpdu
CONNECT ACKpdu
CONNECT ACKpdu
C
a
l
l
e
d
TOVE 3.2.1999
HUT/TML
BISUP
Broadband ISDN User Part
• ITU-T Q.2761 Functional Description
• ITU-T Q.2762 General functions of messages and signals
• ITU-T Q.2763 Formats and codes
• ITU-T Q.2764 Basic call procedures
Public
Network
Public
Network
6
3
TOVE 3.2.1999
HUT/TML
6
4
BISUP
• SS7 User Part for B-ISDN call control and bearer service control
• Uses services from MTP-3
• Provides services for Application Part
(Call Control)
Application
TCAP
BISUP
CALL CONTROL
SCCP
SIGIF
MTP-3
BISUP
SAAL
MTPIF
ATM Layer
MTP-3
Physical Layer
TOVE modules
SS7 Stack
TOVE 3.2.1999
HUT/TML
BISUP
AP
CC
sigif
CC ASE
factory
BISUP
SID
BCC ASE
mux
SACF
MC ASE
NI
UI ASE
saal link
mux
SIO = 9
NI (Network
Interface)
mtpif
mux
MTP-3
MTP-3
6
5
TOVE 3.2.1999
HUT/TML
6
6
BISUP
Call setup example
Exchange A
Exchange B
SETUPreq
IAM
SETUPind
C
C
ALERTINGind
SETUPconf
RELEASEreq
RELEASEconf
PROCEEDINGreq
IAA
PROCEEDINGind
B
I
S
U
P
ACM
ANM
REL
B
I
S
U
P
ALERTINGreq
SETUPresp
RELEASEind
RLC
RELEASEresp
C
C
TOVE 3.2.1999
HUT/TML
BISUP
ATM Forum’s solutions for NNI:
• IISP (Interim Interswitch Signaling Protocol)
• Version 1.0, af-pnni-0026.000, Dec 1994
• Provides minimum level of interoperability for
multivendor private ATM networks
• B-ICI (Broadband Intercarrier Interface)
• B-ICI 2.1, af-bici-0068.000, Nov 1996
• Defines the protocol used between carrier networks
• PNNI (Private Network-to-Network Interface)
• P-NNI V1.0, af-pnni-0055.000, Mar 1996
• Signaling and routing
6
7
TOVE 3.2.1999
HUT/TML
SS7
Signaling System Number 7
6
8
TOVE 3.2.1999
HUT/TML
MTP3
• ITU-T Recommendation Q.704, Signaling System No.7 Signaling network functions and messages
• ITU-T Recommendation Q.2210, Message transfer part
level 3 functions and messages using the services of ITU-T
Recommendation Q.2140 (SSCF at NNI)
• Signaling message handling
• Message discrimination
• Message distribution
• Message routing
• User parts (SCCP and BISUP) and AAL connections
6
9
TOVE 3.2.1999
HUT/TML
MTP3
Level 4
(User Parts)
Level 3
(MTP3)
Level 2
(NNI-SSCF)
Signalling network functions
Signalling message handling
Message
discrimination
Message
distribution
Message routing
Signalling network management
Signalling
traffic
management
Signalling
route
management
Testing and maintenance (MTP)
Signalling link
management
Signalling message flow
Indications and controls
7
0
TOVE 3.2.1999
HUT/TML
MTP3
BISUP
SCCP
User Parts
User Mux
MTP3
AAL Mux
AAL Connections
NNI-SSCF
NNI-SSCF
NNI-SSCF
7
1
TOVE 3.2.1999
HUT/TML
SCCP
• ITU-T Recommendations Q.711-Q.714, Signaling System
No.7 - Signaling Connection Control Part
• Connectionless control (Basic connectionless service)
• Segmenting and reassembling not supported
• Message discarded when error occurs
• Routing control
• Address translation
7
2
TOVE 3.2.1999
HUT/TML
SCCP
SCCP
Users
SCCP
SCCP
Connectionoriented control
(SCOC)
SCCP
Connectionless
control
(SCLC)
SCCP
Management
(SCMG)
MTP3
SCCP
Routing
control
(SCRC)
7
3
TOVE 3.2.1999
HUT/TML
TCAP
• ITU-T Recommendations Q.771-774, Signaling System
No.7 - Transaction Capabilities Application Part
• Connectionless remote procedure call
SCP
TCAP
SSP
TCAP
SSP
• Operation class 1, structured dialogue and normal end
• Interworking between CORBA and TC systems
(TcSignaling)
7
4
TOVE 3.2.1999
HUT/TML
TCAP
TC-User
TCAP
tove.tcap
org.omg.TcSignaling
TcPdu
ProviderFactory
Dialogs, Invocation
State Machines etc.
Java
tove.idl.tcap
C++
tcap
sccpif
sccp
TcPdu
Provider
7
5
TOVE 3.2.1999
HUT/TML
TCAP
TcPduUser
component and dialogue
handling primitives
create_tc_pdu_provider
register
deregister
TcPdu
Provider
TcPduProvider
Factory
ISM
ISM
Dialogue
Protocol
N_UNITDATAind
ISM
CORBAInputHandler
N_UNITDATAreq
Java
CORBA IDL
C++
N_UNITDATAind
tcapAdapter
7
6
TOVE 3.2.1999
HUT/TML
TOIMIALAVERKOT (TOVE)
Communications Platform
Testing
Jussi Turunen
Jari Katajavuori
7
7
TOVE 3.2.1999
HUT/TML
Protocol conformance testing
• The purpose of testing is to find bugs
• Communication software needs to be tested
for interoperability with other vendors
software
• Conformance testing is the process of
verifying that an implementation performs
in accordance with a particular standard.
7
8
TOVE 3.2.1999
HUT/TML
Protocol conformance testing
• Conformance testing is a formal method of
testing
• Specified in ISO IS 9646
• The testing is done according to particular
protocol conformance test suites
• Test suites are provided by standardization
bodies or manufacturers
7
9
TOVE 3.2.1999
HUT/TML
SSCOP testing environment
Impl.send
UNI-SSCF
Operatios
Tester
SSCOP
N-1 stack
N-1 stack
155 Mbit/s
8
0
TOVE 3.2.1999
HUT/TML
8
1
Testing SSCOP
• Test suite from ATM-Forum
– 317 test cases
• Testing software by OES and TOVE
• Components:
– tester: provided by OES, executes the test suite
– IUT: implementation under test, TOVE SSCOP
protocol
TOVE 3.2.1999
HUT/TML
Testing SSCOP
– N-1 stack: encodes data from tester to a form
understood by IUT and vice versa
– operation server: executes the test suite defined
operations for which a separate server was
written
8
2
TOVE 3.2.1999
HUT/TML
Test runs
• Tests were run one state at a time
• The execution of the whole suite lasted
hours  faster this way
• One-state-at-a-time -testing allowed also
fast debugging and concentration on statespecific bugs
• Only some test cases were run separately
8
3
TOVE 3.2.1999
HUT/TML
Testing SSCOP - experiences
• The distribution of binaries was a working
solution
• Testing, finding and fixing errors separate
tasks with some conflicts
• Original SSCOP was working with Linux
and Fore, still errors were found
– END PDU retransmission, size constraints
• Also the test suite contained errors
8
4
TOVE 3.2.1999
HUT/TML
UNI Testing
• Test Adapter
• Java Tester Plug
• The ATM Forum Abstract Test Suite for
UNI 3.1 ATM Signaling for Network Side
– 661 test cases
– 160 test runs so far
• Components:
– 2 x N-1 stack
– IUT
8
5
TOVE 3.2.1999
HUT/TML
UNI testing environment
Tester
N-1 stack
N-1 stack
155 Mbit/s
CC
CC
UNI 3.1
UNI 3.1
N-1 stack
N-1 stack
8
6
TOVE 3.2.1999
HUT/TML
TOIMIALAVERKOT (TOVE)
Communications Platform
Intelligent Network
Pasi Nummisalo
8
7
TOVE 3.2.1999
HUT/TML
IN architecture
SMP
SCEF
SMF
SMAF
Service deployment
SDP
IP
SRF
SDF
SS#7
SCP
INAP
User Network
Interface
SCF
SDF
SSF
SRF
CCF
CCAF
SSP
8
8
TOVE 3.2.1999
HUT/TML
8
9
Interaction
CCF
FEAM
BCSM
PIC
DP
SCF
SSF
Trigger table
Trigger 1 Trigger 2 x
Trigger 3 -
INAP
FEAM
SCME
SSME
SCF FSM
SLEE
PIC
SSF FSM
SLPI
DP
state
state
SIB chains
SLPL
SIB 1
SIB 2
SIB 3
SIB 4
CCAF
CCF
POI
BCP
POR 1
POR 2
TOVE 3.2.1999
HUT/TML
Messages
CC
Setup
Service
Null
InitialDP (TDP-R)
Origination Attempt
RequestReportBCSMEvent, Continue
Send Call
EventReportBCSM (EDP-N)
Busy
Answer
Active
No Answer
calls = calls + 1
9
0
TOVE 3.2.1999
HUT/TML
TOVE IN
Name service
GUI
TOVE B-SSP
management
TOVE SMP
initiator
cc
UNI
Services
NNI
RMI
DCF
Deploy
factory
B-ISDN
responder
INGW
TOVE SLEE
SS#7
SSP
DCF
SCP
9
1
TOVE 3.2.1999
HUT/TML
DCF
9
2
TOVE 3.2.1999
HUT/TML
IN implementation
9
3
TOVE 3.2.1999
HUT/TML
GUI
9
4
TOVE 3.2.1999
HUT/TML
Hierarchy
SLEE
Context
Services
Service x
Trigger x
Subscriber x
BCP in
POI x
BCP out
POR x
HLSIB x
SIB x
SIB x
SSD
next
9
5
TOVE 3.2.1999
HUT/TML
INGW
Traditional SS7
Domain
TC-CORBA Gateway
Proxy
Object
CORBA Domain
TC-user
Object
e.g SSP (initiator)
Traditional
TC-User
ORB
TC PDU
Interfaces (Optional)
TC/SS7
Stack
TC/SS7
Stack
e.g SCP (responder)
9
6
TOVE 3.2.1999
HUT/TML
9
7
Interaction
IN Domain
Legacy SSP
Gateway
TcPduUser,
SSP Proxy
TCFactory
Finder
CORBA-domain
TCUserFactory TCUser (SCP)
begin_ind(destGT,…)
resolve(destGT)
createResponder(own ref)
invoke_ind(dId,…)
decode
IDL operation for oper 2
invoke_req(dId,…)
continue_req(dId,…)
end_req(dId,…)
IDL operation for oper 1 (
encode
end_association
create
possible result)
TOVE 3.2.1999
HUT/TML
IDL interfaces
IDL:
interface <name>Initiator:TcSignaling::TcUser
{
void connect(…);
void releaseCall(…);
}
interface <name>Responder:TcSignaling::TcUser
{
void initialDP(…);
void eventReportBCSM(…);
};
interface TcUserFactory:TcSignaling::TcUserGenericFactory
{
void <name>Initiator create<name>Initiator();
void <name>Responder create<name>Responder(<name>Initiator, …);
};
// e.g. name = CoreINAP_CS1_SSF_to_SCF_AC
9
8
TOVE 3.2.1999
HUT/TML
INAP-IDL
ASN.1
IDL
InitialDPArg ::= SEQUENCE {
serviceKey [0] ServiceKey,
bnumber [1] CalledPartyNumber
}
struct InitialDPArgType {
ServiceKeyType serviceKey;
CalledPartyNumberType bnumber;
};
initialDP OPERATION ::= {
ARGUMENT InitialDPArg
ERRORS { missingCustomerRecord |
systemFailure
}
CODE
local : 1
}
void initialDP( in InitialDpArgType arg,
inout TcContext ctx )
raises MissingCustomerRecord,
SystemFailure;
9
9