Douglas:
I really appreciate your email to help me to clarify the things that will definitely improve our in-depth understandings related to H.323.
I have answered each item below step by step. If you have any more questions, please let me know.
Again, I heartfelt thanks to you for providing me an opportunity to explain the things to the worldwide ITU-T SG 16 audiences.
Regards, Radhika
From: Douglas Clowes[SMTP:dclowes@OZEMAIL.COM.AU] Reply To: Mailing list for parties associated with ITU-T Study Group 16 Sent: Monday, August 31, 1998 9:27 PM To: ITU-SG16@MAILBAG.INTEL.COM Subject: Re: ARQ/ACF
Radhika,
I welcome any opportunity to test and improve my understanding of H.323, particularly in the area of call establishment, diversion and teardown.
At 15:42 31/08/98 -0400, Radhika wrote:
Douglas:
Thanks for the reply. Now we have the chance to go for the next step to understand the short comings of the present H.323v2 as well as proposed extension specified in AT&T's distributed model.
I would like to separate the answer in two parts: 1. General aspects of H.323 and 2. Specific to Vivian's topology and configuration.
General aspects of H.323:
H.323 is a multimedia application, and is independent of the underlying transport networks (i.e., LAN, IP, ATM, FR, and/or others - in any combinations). H.323 considers only H.323 entities (e.g., terminals, MCs, MCUs, etc) and GKs. The communications occur between H.323 entiries and
GKs,
and between GKs. A single GK controls and manages a zone, and a zone may
be
independent of network topology and may composed of multiple segments
which
are connected using routers, switches, and/or other devices.
Just terminology, but my usage is that H.323 refers to "H.323 entity", which includes gatekeeper and endpoint. Endpoints then is broken down into gateway, terminal, and MCU. The MCU consists of MC and optional MP(s).
Communication is between endpoints and _their_ gatekeeper(s), between endpoints, and between gatekeepers.
Communication, in H.323, is end-to-end. An "end" may include a gateway, usually to another system, but could be for codec conversion. An MCU is regarded as an "end". H.323 also provides for "gatekeeper routed" calls, where some parts of the call go through a gatekeeper (usually Q.931, occasionally H.245). Otherwise, communication is not "through" other entities.
[Radhika: Yes, in general, H.323 entities means as long as those entities communicate with H.323 messages at H.323 level.]
H.323 does envision communications between the GKs. For example, LRQ messages are sent between the GKs. Between the GKs, as mentioned earlier, there can be many routers, switches, or other devices. This implies an "abstraction of routing" for sending the RAS messages between the GKs at the H.323 level, however, the specific implementation of "routing" of the RAS messages at the "network level" is not addressed in H.323v2.
H.323 is very vague about Inter-Gatekeeper communication. It specifically exemplifies the LRQ. It also provides for gatekeeper routed call signalling and control channel.
[Radhika: Yes, you are right. H.323v2 allows for both RAS signaling messages (mandatory) as well as gatekeeper routed call signaling messages (optional).]
The gatekeeper may redirect the H.245 Control Channel to an MC when an ad hoc multipoint conference switches from a point-to-point conference to a multipoint conference.
The MC may be discovered by LRQ by the gatekeeper. Its identity may not be known beforehand by either endpoint, nor the gatekeeper.The point being that its identity is unknown to an endpoint wishing to join the conference after its establishment.
[Radhika: Yes, it is a very good point that you have brought up. I like to see that others also comment on that. How does an endpoint know before hand the identity of an MCU in the case of multiple-MCU environment. My guess is that some how some knowledge for the address of the MCU has to be there.]
[In AT&T's distributed model, it is proposed that all GKs should be
capable
to exchanges all RAS signaling messages (not only LRQ as envisions by the present H.323v2) to solve problems, and the "pathValue" field has been introduced to formalize the "abstraction of routing" notion between the
GKs
at the H.323 level considering the multiple-GK environment. At H.323
level,
AT&T's proposed contribution does not propose any "specific routing
schemes"
or "routing interfaces".]
H.323 envisions that all communications shall be done between H.323
entities
such as H.323 terminals, MCUs, MCs, and GKs. At H.323 level, the communications can take place within a given zone or between multiple
zones.
At H.323 level, the communication topology has be covered by the single
zone
GK or multiple zone GKs. H.323 cannot offer any help if the communication topology is not covered by the H.323 GKs.
My understanding is that there is at most one zone per endpoint, and that communications occurs _between_ zones, rather than _through_ zones.
[Radhika: I guess that there can be many H.323 endpoints per zone. Each zone will have one GK. There will be communications between the GKs at H.323 level. I do not know what you mean by "between the zones" or "through the zones". I guess that it is the communications between the GKs. However, each GK controls and manages resources within its zone.]
H.323v2 does not provide mechanisms how the MCUs should be chosen automatically in view of multiple MCUs. That is, a specific MCU has to be chosen by the calling party. (The automatic call deflection by the setup message by a new party to an established multipoint [N-party call] conference call to a MCU is not supported by H.323v2 unless somehow the required MCU's known address is put in the setup message.)
H.323v2 does not specify how the MCU is chosen, but it does provide mechanisms for choosing one, and for redirecting the initial call to the MCU. See section 8.4.3 of H.323v2. This section also shows how a setup message may be deflected, to the previously unknown MCU, by a Facility message indicating routeCallToMC.
[Radhika: I assume that one can choose if one knows "which one" to choose. That is, one needs have the knowledge of the MCUs, and accordingly that information has to be embedded in the facility message. H.323v2, as I understand, does not provide any mechanisms what "criteria" to be used to choose one MCU over another. Probably, these criteria have been left for implementations to differentiate services.]
At H.323 level, Communications are done between the H.323 entities: H.323 terminals, H.323 MCUs, H.323 GKs, etc., and there is no "notion" of communications of "local" or "remote".
Whether you refer to each entity as local/remote, near-end/far-end, A/B, source/destination, ingress/egress, or some other terminology, it is useful to be able to differentiate participants using English words that are not in the definitions section of the standard.
When talking about bandwidth reservation in the network segment which is "local" to the entity requesting use of the bandwith on the network segment near it, English provides the term "local" to describe it. Perhaps you would prefer "relevant", "appropriate", or some other term if "local" has objectionable connotations for you.
[Radhika: I apologize for any mis-understanding in interpretation of different terminologies. I was just refering to "ARQ bandwidth management is local only".]
Specific to Vivian's topology and configuration:
In Vivian's configuration, only one MCU has been shown, and that MCU is located in a separate zone. There are 4 zones (GK1, GK2, GK3, and GK4)
where
H.323 terminals are located, and one MCU in a separate zone that has its
own
GK.
Correct.
According to AT&T's proposal, the GKs will be able to know where the MCU
is
located through exchanging of RAS messages (e.g., LRQs). The calling
party
may select the MCU where the conference will be controlled. The GKs will
be
able to send the signaling messages to the particular GK where the MCU is located.
H.323v2 allows for the call to be established between an initial terminal and the MCU, with (or without, if absent) the involvement of the gatekeepers in the respective zones, and subsequent terminals invited to join the conference.
[Radhika: Yes, in general, it is true for all cases in H.323v2. People may not need the help of GKs at all, if they think they have all the information what the GKs have to provide them. That is, RAS signaling messages may not be needed before the call setup. However, if they need to get the help of the GKs, RAS signaling messages may need to be transferred between the GKs.]
H.323 also allows for the creation of an ad hoc conference from a point-to-point conference, where an MC is already involved in the call. Or from a from a gatekeeper routed call where an MC is not involved in the call.
[Radhika: Yes, H.323v2 provides some mechanisms. However, we may also try to improve the specifications in the future to make it more dynamic from a point-to-point call (where neither MC nor GK is involved) to a point-to-multipoint call along with sub-conferences within a given conference.]
AT&T's proposal allows the ARQ and other RAS messages between the source
and
destination GKs so that all GK s between the source-destination entities (the word "path" may be mis-understood) can work cooperatively from the resource management point of view whether a call be accepted or not
before
the actual call is setup.
H.323v2 allows for a new endpoint to call an endpoint currently participating in a conference, but not containing the MC. The procedure (8.4.3.3 part 2) involves sending a SETUP message and returning a FACILITY message indicating routeCallToMC, and specifying the signalling address of the MC (or its gatekeeper, for GK routed).
[Radhika: Yes, you are right, and one has to know the "address" of the MC (i.e., priori known address). This setup message is being used by-passing the GKs. That is, no RAS signaling is used (i.e., no help from the GKs as well). However, the description above that refers to AT&T's proposal clearifies the fact how inter-GK communications will help to confirm the resources at the H.323 call level using the ARQ/ACF/ARJ messages when the H.323 call traverses multiple zones.]
A MCU that will be controlling the multipoint conference call will be the master.
If a new party (e.g., F in Vivian's example) wants to join the "already" established "multipoint" conference call, F has to join the conference
via
the MCU (most like to know the conference bridge number priori from the calling party E1 by F). The present H.323v2 does not provide any
mechanisms
to deflect the setup message of a new joining member automatically to go
the
MCU (until the new calling party [in this case it is F] knows priori the address of the MCU).
If the MCU has been dynamically determined, F probably has no idea of the identity of the MCU. It would normally begin call establishment with one of the known endpoints, say E1. Call establishment from F to E1 proceeds normally until the SETUP. The SETUP message, according to the text, contains CID = N and conferenceGoal = join, but I see no reason why that should be required. Terminal E1 respondes to the SETUP with a Facility message that tells F to join the conference, the CID of the conference, and the address of the MCU. This is the first F needs to know of the conference, of the CID, or of the MCU.
[Radhika: I guess that you are more or less in agreement with respect to different alternatives how F may join in the already established conference. In you example, F discovers he conference ID, MCU, etc. after calling the endpoint E1 asuming F knows endpoint E1 priori. In my example, it is assumed that F knows the MCU and conference ID priori, and does not know endpoint E1's identity.]
{RSVP reserves the bandwidth at the network level especially in the IP network, and RSVP even may not be applicable to reserve the bandwidth at
the
LAN. Similarly, there are many mechanisms may be available for the ATM network level. These BW/QOS schemes are limited to the network level
only.
However, H.323 is an application, any the "abstraction" of BW/QOS is end-to-end that include resources for "network level" as well as "upper middleware level" at the H.323 call level.}
H.323 is provides for multimedia communication over packet based networks which may not provide a guaranteed Quality of Service, and are most likely, shared with other traffic. While the network may be dedicated, and quality may be guaranteed, that is a degenerative case.
[Radhika: Yes, that is right. Let me add a little more. I do not know whether a network has to be dedicated or not to guarantee quality. For example, an ATM network may be shared among millions of users. Even then, an ATM network has the capability to guarantee quality at the network level. H.323 is a multimedia application, and it is end-to-end. H.323 requires "network level" as well as "upper layer (above network layer)" services between the source and destination H.323 entities. That is, H.323 requires services both from "network level" and "upper layer (above network layer)" services to satisfy its requirements. For example, an H.323 MCU in a carrier network whose resources are shared among thousands of users, its "upper layer (above network layer)" resource management is very critical in addition to the "network level" resource management. In H.323 level, an end-to-end resource management that includes both "network layer" and "upper layer" for each H.323 call is very critical. Please also note that a H.323 call can be multimedia, multipoint call as well.]
There has been some discussion on the list of the adequacies of the BW/QoS mechanisms included in H.323. Much of it has been directed at the inadequacies of the mechanisms in various scenarios.
[Radhika: You are right. I do not think that we should go for any specific implementation schemes for the BW/QOS mechanisms at the H.323 level. In H.323, we creating some "abstractions" at the H.323 level in a technology independent way so that we are leaving enough room for creativity for competition to differentiate services. This creation of "abstractions" is the most fundamental mechanisms of H.323. That is why, we see that H.323 has become so popular that IETF, ATM-F, and other are implementing H.323 over specific technologies. I would say that this is one of the most important standards of our time ever created by the ITU-T. However, if there are some standards that are developed for some specific technologies for implementations of H.323 including BW/QOS, we may use those specificaions as well.]
In a shared network environment, the best that BW management can aspire to, is to limit the network utilisation by H.323 traffic. Other traffic, not under control of the GK, will have a potentially significant impact on QoS.
[Radhika: Form H.323 point of view, a GK does controls and manages resources of a zone, and communications occur at H.323 level. If there are multiple zones, each GK in each zone will have the responsibility to control and manage resources. That is, H.323 does not specifies the situation if the resources are not under GK control. As I mentioned before, it is also perfectly OK, (I guess that I am right), not to use any services that are offered by GKs if one thinks that one has all the answers what H.323 GKs provide. In AT&T proposal, an extension has been proposed for inter-zone communications via GKs considering multiple zones.]
It is possible, in some cases, that the GK controls all of the traffic in a particular network. But, in the general case, resource issues, and QoS issues, will have to be resolved at the network level. Mechanisms like RSVP, dedicated bandwidth, private lines are appropriate to this network level functionality. Any abstraction at the application level still has to be implemented at the network level.
[Radhika: It depends. Please see earlier write-up very carefully. I have also used an example of MCU. For example, the upper layer (above network level) reources of an MCU do not fall into the category of "network level" functionality. The resources of a zone means all the resources that include both "network" and "upper" layer. At H.323 level, we create "abstrations", and we do not address for any specific implementations. (I personally has worked in this area for a long time. I have devloped some schemes how to implement those things from higher layer to the lower layer, and these schemes are implementation specifics. In standard arena, it may create debates whether those schemes are optimal or the most efficient.) Definitely, many (if not all of them) of the application abstractions have to be translated into the network level. This is the real challenege. For example, there is no one-to-one mapping betwen the application level BW/QOS parameters to the network level BW/QOS parameters. I had talks with many people in the standards arena wheher they worked on those issues. They indicated that they were yet to work in those areas.
Radhika: Some hypothetical implementation examples might be helpful. The extreme case would have ben "not to use any resource control" (similar to one unspecified bit rate [UBR] as it is used in the public Internet). In this case, for example, all GKs of all zones will just confirm as soon as the ARQ message for each call since no conrol is needed. A little conrol may specifiy accept N number of calls per zone if the total bandwidth does not exceed certain upper limit. Or, there may be more shophisticated implementations at the H.323 call level that uses the help of GKs via inter-zone communications between the H.323 source-destination entities.
Radhika: Many network level BW/QOS schemes have been developed. ATM network is the prime exapmle. We can also think RSVP in the context of IP-based router network. As I mentioned before, RSVP does not provide any support for controling BW/QOS over the LAN. That is, in LAN-IP (wide area network)-LAN configuration, RSVP can only provide support in the IP (wide area network) part only. In other words, even at the "end-to-end network level", RSVP does not help.
Radhika: Considering the above situation, let us think about an end-to-end H.323 call between the H.323 source-destination entities. This includes both "network" and "upper" layer. We are considering that a GK will have the "abstractions" BW/QOS that that will be translated in all layers as appropriate. At H.323 level, we do not expect to have specific answers for specific implementations for all lower layers. We are just creating "abstraction" for now.]
Forgive me if I am wrong, but I still read you as proposing to set up some form of "path" through multiple gatekeepers, with reserved bandwidth in a sequence of zones. That sort of thing will only work if the network layer routing follows the same "path", which, in the general case, cannot be guaranteed, and is probably not desirable.
[Radhika: It depends how sophisticated models are developed at the GK level. Let us not stop creativity for differentiate services through offering quality. If one does not want to implement that, as I mentioned bfore, it is up to one's choice. But let me provide some very high level examples. A GK of a given zone may consider that it will ONLY care about the total number of calls and the upper limit of bandwidth no matter whether what paths are being followed within its zone by the actual call. Therefore, the actual path level information at the routers of the said zone may not be needed at all. There can be numerous ways of implementations for "BW/QOS abstractions" especially from the service providers' point of view. At H.323 level, we are not solving those problems at all. We are keeping all possible options open, if one really wants to implement.]
To force the network level router to pass RTP media packets through the same path, presumably source-routing could be used, if available at the network layers. Not desirable!
[Radhika: Please see my answers given above. In H.323 level, nothing is forced. It is an option. How that option will be implemented it is up to one's choice. A GK has the knowlege at the zone level only ("network level path" knowlege is not mandated at the H.323 level). How the "BW/QOS abstraction" is implemented at the lower level is implementaion specific, and H.323 does not mandate any specific implementations at the lower level.]
Or the RTP media packets would have to pass through the intermediate gatekeeper(s), as a media-level gatekeeper-routed call scenario. Not desirable!
[Radhika: Inter-GK (inter-zone) communications are dealing with the RAS signaling messages only. It does not mandates how the gatekeeper routed call will take place. Once all the information is obtained vis the RAS signaling messages, it is up to one's choice how the gatekeeper routed will take place depending on the optimal configuration. It can be as simple as one GK only. Or, it can also be via multiple GKs if that is the best choice (e.g., some back-end services are distributed over multiple GKs.). I hope that this explanation will clarify the things.]
If a "path" were reserved by ARQ, and it failed, rerouting would require "re-ARQ-ing" on an alternate "path". Not desirable!
[Radhika: I guess that above answers will clarify the situations. It is the inter-zone communications, and it does not mandates any specific "network level paths" at the H.323 GK level. So, this concern stated above will not be there.]
I hope that my above answers will clarify all questions that you might
have.
If any more questions remain, please let me know.
Am I confused?
Thanks and regards,
Radhika
Regards,
Douglas