QoS Requirements for Data Collaboration Using T.120
Liane Tarouco
RNP2
Topics
This presentation will shows results of an investigation on the T.120 protocol behavior aimed to diagnose common data conference failures causes.
Specific quality of services requests, needed for this kind of applications will be reported as well as results of experiments using QoS approached for videoconference and T.120 data collaboration organized in RNP2
New alternatives on collaboration software will be discussed
Data collaboration applications
Data collaboration applications offer very useful services like application/desktop sharing to provide real remote collaboration specially for use in conjunction with videoconferencing.
T.120 based systems are the most used approach for this kind of applications providing interoperability between different vendors
T.120 & H.323
Transport Network (ISDN, Switched-56, ...)
H.221 Multiplex and Framing
H.233 - Encryption
H.230
H.242
Ctrl
H.243
Multi-point
H.234
KeyExch
VIDEO AUDIO H.224
G.711G.722G.728
G.723.1G.729
H.261
H.262H.263
H.281
Far endcameracontrol
T.123
T.122/T.125MCS
T.124Generic
ConferenceControl
ApplicationProtocols
T.126T.127
TimeCriticalApps
AECAGC
Noise-Suppress
Pre-procPost-proc
CONFERENCING APPLICATIONS & USER INTERFACE
BAS ECS
H.323 components
6
Terminal GK - gatekeeper (control and ‘routing’ ) GW - gateway (access to other environments) MC - multipoint controller MP - multipoint processor ( mix ‘n match the
media) MCU - multipoint control unit
• contains MC and MP optionally a T.120 MCU
H.323 components
7
Manages conference using H.245 and may use T.120 commands
Establishes common conference mode• Common set of media streams• May provide audio transcoding
Multipoint Control Unit MCU
Basic Operation
Endpoints register with gatekeeper to provide mapping between physical address and alias address
Endpoint asks gatekeeper for permission to place call to another endpoint
Endpoint signals call with other endpoint Endpoints exchange media Endpoints disconnect, notify gatekeeper
9
Admissions & Directory Service Creation of a connection Endpoint capabilities exchange Opening and closing logical channels Changing modes (point-to-point -
multipoint) Real-time transmission over packet
networks
Messages & procedures
10
H.323 for architecture, procedures H.225.0 more than just a document...
• Q.931 ‘derived’ messages for call setup• RAS for endpoint-Gatekeeper signaling
H.245 for capabilities/media control RTP/RTCP for media transport
• Endpoint to endpoint after call setup• Open multiple logical channels (one per one way media)
T.120 for data
Standards
RAS Functions (H.225)
Discovery/Registration - find gatekeeper and provide mapping between physical and alias addresses
Admission - ask permission to place call with bandwidth
Bandwidth Changes - ask permission to use more bandwidth
Status - report on call status Disengage - report disconnect and release
bandwidth
Registration, Admission, and Status
Registration, admission, and status (RAS) is the protocol between endpoints (terminals and gateways) and gatekeepers.
The RAS is used to perform registration, admission control, bandwidth changes, status, and disengage procedures between endpoints and gatekeepers.
An RAS channel is used to exchange RAS messages. This signaling channel is opened between an endpoint and a gatekeeper prior to the establishment of any other channels.
H.225/Q.931
Q.931-like Setup - initiate call from one entity to another Alerting - called endpoint is “ringing” Connect - called endpoint answered Release Complete - disconnect call others, including Facility, Information,
Progress, Status
H.245
Capability negotiation - determine compatible set of media capabilities
Master/slave determination Logical channel control - indicate desire to
start transmission of specified medium Multipoint conference control & indication -
conference rosters, chair control, media indications
Miscellaneous
H.245 Control Signaling
H.245 control signaling is used to exchange end-to-end control messages governing the operation of the H.323 endpoint.
These control messages carry information related to the following:– capabilities exchange– opening and closing of logical channels used to
carry media streams– flow-control messages– general commands and indications
Tools for collaboration
Whiteboard Application sharing Remote control Chat File transfer Printed documents sharing
(document camera)
Videoconference needs complement for supporting collaboration:
H.323 e T.120
ITU-T T.120 series
Whi
tebo
ard
Ove
rhea
d P
roj
Pho
tos
Doc
umen
ts
File
Tra
nsfe
r
App
Sha
ring
Res
erva
tions
A/V
Con
trol
Application Protocols T.126 - Still Image, T.127 - File TransferT.130 - A/V Control, T.SHARE, T.RES
T.124 - Generic Conference Control
T.123 - Transport Stacks
ISDN POTSVoice/Data
LAN ATM
MC
U T.122 / T.125 - Multipoint Comm. Service
T.126 T.127
TE
RM
INA
L
Sw
itchi
ng
T.130
ITU-T T.120 series
Kinds of data and standards– Photos and Documents (T.126)– Pointing and Annotating (T.126)– File transfer (T.127)– PC Application Sharing – Virtually any multipoint flow of data
ITU-T T.120 series
Kinds of control & standadrds– Conference setup, entry, modify, exit (T.124)– Camera, mic, peripheral control (T.130)– Who sees whom (T.130)– Director control, browsing (T.130)– Reservations– Add site, extend conference time
Protocols T.120 T.123 - OSI transport protocol T.122, T.125 - Multipoint Communication Service
(MCS): T.124 -Generic Conference Control (GCC)
MCS service primitives
MCS domain management primitives MCS Channel Management primitives MCS data transfer primitives MCS token management primitives
MCS service primitives
MCS domain management primitives– MCS-CONNECT-PROVIDER request, indication, response,
confirm– MCS-DISCONNECT-PROVIDER request, indication– MCS-ATTACH-USER request, confirm– MCS-DETACH-USER request, indication– MCS-DOMAIN-PARAMETERS request, indication, confirm
MCS service primitives
MCS Channel Management primitives– MCS-CHANNEL-JOIN request, confirm– MCS-CHANNEL-LEAVE request, indication– MCS-CHANNEL-CONVENE request, confirm– MCS-CHANNEL-DISBAND request, indication– MCS-CHANNEL-ADMIT request, indication– MCS-CHANNEL-EXPEL request, indication
MCS service primitives
MCS data transfer primitives– MCS-SEND-DATA request, indication– MCS-UNIFORM-SEND-DATA request, indication
MCS token management primitives– MCS-TOKEN-GRAB request, confirm– MCS-TOKEN-INHIBIT request, confirm– MCS-TOKEN-GIVE request, indication, response, confirm– MCS-TOKEN-PLEASE request, indication– MCS-TOKEN-RELEASE request, confirm
– MCS-TOKEN-TEST request, confirm
T.124 - Generic Conference Control (GCC):
T.124 - Generic Conference Control – Provides set of facilities to establish and manage multipoint . – Centralize an information base (state of serving conferences)
GCC
GCC
GCC provides a set of services for establishment and termination of conferences
GCC provides a means to create new conferences.
GCC provides a means of identifying which Application Protocol Entities are available at each node and to provide necessary information for Peer Application Protocol Entities to communicate with each other
GCC GCC provides a method for allowing a node to
become a conductor for a conference. A token is used by GCC to determine whether a
conference is conducted or non-conducted. The Application Registry is an active data-base
residing at the Top GCC Provider that may be used to manage channels, tokens, and other shared resources used in a conference.
GCC - Functional Units
Conference establishment and termination Conference roster Application roster Application registry Conference conductorship Miscellaneous functions
GCC - Conference establishment and termination
GCC-Conference-Create request GCC-Conference-Create indication GCC-Conference-Create response GCC-Conference-Create confirm GCC-Conference-Query request GCC-Conference-Query indication GCC-Conference-Query response GCC-Conference-Query confirm GCC-Conference-Join request GCC-Conference-Join indication GCC-Conference-Join response GCC-Conference-Join confirm
GCC - Conference establishment and termination
GCC-Conference-Disconnect request GCC-Conference-Disconnect indication GCC-Conference-Disconnect confirm GCC-Conference-Terminate request GCC-Conference-Terminate indication GCC-Conference-Terminate confirm GCC-Conference-Eject-User request GCC-Conference-Eject-User indication GCC-Conference-Eject-User confirm GCC-Conference-Transfer request GCC-Conference-Transfer indication GCC-Conference-Transfer confirm
GCC - Conference establishment and termination
GCC-Conference-Invite request GCC-Conference-Invite
indication GCC-Conference-Invite response GCC-Conference-Invite confirm
GCC-Conference-Add request
GCC-Conference-Add indication GCC-Conference-Add response GCC-Conference-Add confirm
GCC-Conference-Lock request GCC-Conference-Lock indication GCC-Conference-Lock response GCC-Conference-Lock confirm
GCC-Conference-Unlock request GCC-Conference-Unlock
indication GCC-Conference-Unlock
response GCC-Conference-Unlock confirm GCC-Conference-Lock-Report
indication
Conformance for T.120 service
Transport protocol profile (T.123); MCS Multipoint Communication Service
(T.125); Required components of Generic Conference
Control (T.124);
Why are standards important? Communication requires standards Standards stimulate market growth
– Instant credibility for new products– Customer confidence – Multiple vendors– Increased competition– Volume pricing
Standards are critical to interoperability, but still leave room for product variation– Many options in each standard– Audio and video quality depend on encoders, not
decoders
Additional standards
T.130 series, High level audio/video control– Remote cameras & VCRs, video routing,
continuos presence• How a student request the floor to ask a
question– Automatic video switching
• Social rules e.g. hand raising are used• Submit and cancel floor requests
data,
video
audio
Applications
Broadcast application
Application Sharing
Required services in H.323 & T.120Required services in H.323 & T.120
Teaching and learning environment Teaching and learning environment
Lecture delivery performanceLecture delivery performance T.120 protocols uses a lot of performance
management and when the data channel or the end station do not perform according established thresholds unexpected decision may occur disconnecting one or more users from the conference or disabling some data collaboration function.
Monitoring results T.120 communication between terminals (Netmeeting),
start before logical channels open Centralized conference model (tightly coupled) use
intensively MCU resources
Event> Mon Nov 26 17:15:54 2001 Pkts in 25655 Pkts Event> client Leandro Bertholdo - T.120 session closedEvent> Mon Nov 26 17:16:54 2001 Pkts in 27438 Pkts Event> Mon Nov 26 17:17:55 2001 Pkts in 1695 Pkts Event> client Alexei Korb timeout -- holding downEvent> Mon Nov 26 17:18:55 2001 Pkts in 3324 Pkts Event> client Alexei Korb - T.120 session closed due to insufficient bandwidthEvent> Mon Nov 26 17:19:56 2001 Pkts in 4708 Event> Mon Nov 26 17:20:56 2001 Pkts in 5850 Event> client Liane Tarouco - T.120 session closed due to insufficient bandwidthEvent> Mon Nov 26 17:21:57 2001 Pkts in 7114 Event> Mon Nov 26 17:22:58 2001 Pkts in 8182
QoS
Quality of Service - needed quality to attend specific application user request– telephony– videoconference– file download– TV
QoS Usual specifications
– Bandwidth – Delay – Jitter
QoS from user point of view ?– ITU P800 Perceptual Speech Quality
Measurement (PSQM)– Mean Opinion Scores (MOS)
MOS - Mean Opinion Scores Bad: unintelligible, user do not understand decoded
message. Interruptions due degradation Poor: signal present interruption due degradations;
user needs considerable effort to understand some segments
Moderate: voice quality is bad; user fell annoyed with degradations but there are no interruption and still can understand the message (requires moderated effort)
Good: voice is good to listen, user perceive degradations but do not bother because are minimal (no big effort is needed)
Excellent: user can not differentiate original message from corrupted, that means, do not perceive signal degradation (no effort is required)
Providing QoS
Rede TCHÊ– Videoconference QoS service
UFRGS intranet– Ftp impact
RNP
TCHÊ - Videoconference
TCHÊ - Videoconference
Problems – Packet dropping high (> 30%) – Traffic burst impact video transmission even when
normal bandwidth usage was not too high
Tchê Used IBM router implementation
of DiffServ together with RSVP LLQ used to keep compatibility with Cisco Defined a service called HVIDEO (Expedited
Forwarding) for video originated in the MCU and in the streaming video server – Band reservation (19%) for HVIDEO
Defined a service called CACHE (Assured Forwarding) for traffic using existing cache structure – Band reservation (15%) for CACHE
Collaborative software development
Add T.120 service to Open H.323– Protocols and services study and monitoring
Other collaborative work Collaboration with Open RCT project
from UCDavis– Whiteboard– Java based– Open Software
T-Lite
A lightweight T.120 profile that can be implemented in products requiring minimal data services.
They also can be implemented with less effort than traditional T.120 enhanced multimedia terminals
Lite T.124 profile Only a subset of the GCC services needed
– conference establishment and termination– support for the conference roster– support for a single application roster
Neither the application registry or the conference conductorship services are needed.
Also, no miscellaneous functions are required other than the sending of text messages.
Conclusions
QoS for collaborative services (H.323 & T.120)
T.120 like protocols are needed but lightweight versions must be defined, implemented, tested and standardized