WO2000021245A2 - Method and apparatus for providing resource discovery using multicast scope - Google Patents

Method and apparatus for providing resource discovery using multicast scope Download PDF

Info

Publication number
WO2000021245A2
WO2000021245A2 PCT/US1999/023120 US9923120W WO0021245A2 WO 2000021245 A2 WO2000021245 A2 WO 2000021245A2 US 9923120 W US9923120 W US 9923120W WO 0021245 A2 WO0021245 A2 WO 0021245A2
Authority
WO
WIPO (PCT)
Prior art keywords
request message
scope
message
hop
parameters
Prior art date
Application number
PCT/US1999/023120
Other languages
French (fr)
Other versions
WO2000021245A3 (en
Inventor
Senthil Sengodan
Original Assignee
Nokia Networks Oy
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Nokia Networks Oy filed Critical Nokia Networks Oy
Priority to AU64140/99A priority Critical patent/AU6414099A/en
Priority to DE69911445T priority patent/DE69911445T2/en
Priority to EP99951774A priority patent/EP1119949B1/en
Priority to JP2000575260A priority patent/JP3813442B2/en
Publication of WO2000021245A2 publication Critical patent/WO2000021245A2/en
Publication of WO2000021245A3 publication Critical patent/WO2000021245A3/en

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/26Route discovery packet
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/64Hybrid switching systems
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/12Discovery or management of network topologies
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/02Topology update or discovery
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/16Multipoint routing
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/20Hop count for routing purposes, e.g. TTL
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/48Routing tree calculation

Definitions

  • This invention relates in general to a multimedia communications, and more particularly to a method and apparatus for providing resource discovery using multicast scope selection.
  • the H.323 standards architecture specifies gateways and gatekeepers that enable connections among LAN-based DVC units, ISDN- connected H.320 units, analog telephone-connected H.324 devices, and ISDN and POTS telephones.
  • One rapidly emerging branch of this market includes gateway and billing server systems devoted to Internet telephony.
  • the H.323 standard provides a foundation .or audio, video, and data communications across IP-based networks, including the Internet. By complying to H.323, multimedia products and applications from multiple vendors can interoperate, thereby allowing users to communicate without concern for compatibility.
  • H.323 will be the keystone for LAN-based products for consumer, business, entertainment, and professional applications.
  • H.323 is an umbrella recommendation from the International Telecommunications Union (ITU) that sets standards for multimedia communications over packet switched networks. This includes Local Area Networks (LANs) that do not provide a guaranteed Quality of Service (QoS), which dominate today's corporate desktops and include packet-switched TCP/IP and IPX over Ethernet, Fast Ethernet and Token Ring network technologies. Therefore, the H.323 standards are important building blocks for a broad new range of collaborative, LAN-based applications for multimedia communications.
  • ITU International Telecommunications Union
  • QoS Quality of Service
  • H.323 The H.323 specification was approved in 1996 by the ITU's Study Group 16. Version 2 was approved in January 1998.
  • the standard is broad in scope and includes both stand-alone devices and embedded personal computer technology as well as point-to-point and multipoint conferences.
  • H.323 also addresses call control, multimedia management, and bandwidth management as well as interfaces between LANs and other networks.
  • H.323 is the latest of the recommendations on the H.32X series which specifies standards for videoconferencing over a variety of networks.
  • H.323 includes much of the work done since the approval of the H.320 recommendation in 1990, which is a specification for multimedia over circuit switched digital telephone networks.
  • the H.32X is composed of the following recommendations:
  • H.321 is for videoconferencing over broadband ISDN ATM LAN.
  • H.322 allows videoconferencing over Guaranteed bandwidth packet switched networks.
  • H.323 allows videoconferencing over non-guaranteed bandwidth packet switched networks.
  • H.324 is for videoconferencing over PSTN or POTS (the analog phone system).
  • the H.323 Protocol Stack supports many real time applications that the industry is eager to use through the Internet such as: Desktop
  • Help Desk Applications etc. These applications already exist in the market, but most of them do not address the problem of how to run these applications over a packet switched network like the Internet and most corporate LANs which are based on the TCP/IP suite of protocols. With the pressure of the market to use these kinds of applications over the Internet,
  • H.323 defines four major components for a network-based communications system.
  • Fig. 1 illustrates a H.323 system 100.
  • the four major components of a H.323 system 100 are shown including their interaction with existing networks. These components interact with LANs that may not provide QoS.
  • the four components include Terminals 110, Gateways 120, Gatekeepers 130 and Multipoint Control Units (MCUs) 140.
  • Terminals 110 are the client software that runs in the end user computers that allow users to communicate in real time using all the power of multimedia. These terminals are also called Endpoints.
  • a Gateway 120 is a component of the H.323 specification that provides world wide connectivity and interoperability from LAN. That is, a Gateway 120 will allow computers connected to a LAN to communicate to regular phones 150 connected to the PSTN 152, to digital phones 154 (H.320 terminals) connected to an ISDN network 156.
  • a gateway 120 also translates between different types of codecs used by different kinds of terminals, maps call signaling between Q.931 to H.225 and maps control signaling between H.242/H.243 to H.245.
  • a Gateway 120 is a component that makes possible to interconnect a packet switched network to other types of networks. If connections to different types of networks are not required, then a Gateway 120 is not required since terminals can communicate between them if they are on the same LAN. Terminals communicate with gateways using H.225.0 and H.245 protocols.
  • a Gatekeeper 130 is an H.323 component that performs four basic functions:
  • Admission Control The Gatekeeper 130 could reject calls from users. An user must be registered with the Gatekeeper 130 in " order to complete a call.
  • H.323 zone H.323 zone
  • the functions of the Gatekeeper 130 are included in the Gateway 120 by most vendors, although they are logically separate and they perform different kinds of functions.
  • the Multipoint Control Unit (MCU) 140 is a logical device that supports conferences between two or more endpoints.
  • the MCU 140 typically is integrated with the implementation of the gateway, so in most implementations the MCU 140 won't be a separate computer performing conferencing functions. Also, with a combined implementation of the functions of the MCU 140 with the functions of the gateway 120, conferences among participants of different networks (LAN and PSTN) will have better performance than divided implementations.
  • a Terminal 110 may need to discover a suitable Gatekeeper 130 so that it may register with it.
  • Such resource discovery needs to occur in a dynamic fashion to account for possible topology changes and failures within the network.
  • the mechanism needs to be simple and efficient.
  • the present invention discloses a method and apparatus for providing resource discovery using multicast
  • a method in accordance with the principles of the present invention includes sending a first request message having a first selected scope, analyzing whether a confirm message is received in response to the first request message and sending a second request message having a second selected scope when a confirm message is not received in response to the first request message, the second selected scope being greater than the first
  • the analyzing further includes setting a timer after the first request message is sent, detecting whether a confirm message is received before the timer expires and terminating the resource discovery procedure when a confirm message is received prior to the expiration of the timer.
  • the detecting further includes determining whether a scope increase is allowed when a confirm message is not received before the expiration of the timer, terminating the resource discovery procedure when a scope increase is not allowed, increasing the scope to the second selected scope when a scope increase is allowed and resetting the timer.
  • the sending further includes transmitting the request message to a known multicast group.
  • the scope comprises a Hop Count
  • the Hop Count represent a number of nodes in a multicast tree that the request message propagates.
  • the Hop Count is decremented at a node in the multicast tree receiving the request message and the request message is forwarded to a next node in the multicast tree.
  • the request message further comprises a Threshold Hop Count for limiting the propagation of the request message in the multicast tree.
  • the method further includes comparing the Threshold Hop Count to the scope, preventing a response to the request message when the scope is greater than the Threshold Hop Count and responding to the request message when the scope is not greater than the Threshold Hop Count.
  • the request message further comprises parameters for analyzes by a node receiving the request
  • the parameters further comprises hop-by-hop parameters, the hop-by-hop parameters being modified by intermediate nodes during the propagation of the request message in the- multicast tree.
  • parameters further comprise destination parameters, the destination parameters being used by an resource being discovered using the request message to determine whether the resource responds using a confirm or a reject message.
  • a discoverer including a discovery unit and an application, operatively coupled to the discovery unit, the application sending a notification to the discovery unit for locating an endpoint application, wherein the discovery unit sends a first request message having a first selected scope to a multicast group, analyzes whether a confirm message is received in response to the first request message; and sends a second request message having a second selected scope when a confirm message is not received in response to the first request message, the second selected scope being greater than the first selected scope.
  • a timer is provided for setting a window for receiving the confirm message, wherein the discovery unit sets the timer after the first request message is sent, detects whether a confirm message is received before the timer expires and terminates the location of an endpoint when a confirm message is received prior to the expiration of the timer.
  • the discovery unit determines whether a scope increase is allowed when a confirm message is not received before the expiration of the timer, terminates the location of an - endpoint when a scope increase is not allowed, increases the scope to the second selected scope when a scope increase is allowed and resets the timer.
  • the application and the discovery unit are co-located.
  • Another aspect of the present invention is that the application and the discovery unit are not co-located.
  • discovery unit includes a base transceiver station, a base station controller or a mobile services switching center.
  • the application comprises a mobile terminal.
  • a discovereree is provided at the receiving end, the discoveree, upon receiving a request message, decrementing the Hop Count, modifying the hop-by-hop parameters, examining whether the Hop Count is zero, passing the request message down the multicast tree when the Hop Count is zero, examining the destination parameters, and suitably sending a confi m or rejection message to the discoverer.
  • Fig. 1 illustrates a H.323 system
  • Fig. 2 illustrates a Discoverer and a Discoveree from an OSI layer standpoint
  • Figure 3 illustrates a generic distribution of Discoverers and Discoverees
  • Fig. 4 indicates the fields that are included in the request message;
  • Fig. 5 illustrates scope variations as applied to distributed resources;
  • Fig. 6 illustrates the system architecture of a Discoverer according to the present invention
  • Fig. 7 illustrates the system architecture 700 of the Discoveree according to the present invention
  • Fig. 8 illustrates a flow chart of the Discoverer functionality according to the present invention
  • Fig. 9 illustrates a block diagram of a discoverer unit implementing a resource discovery procedure according to the present invention
  • Fig. 10 illustrates a flow chart of the Discoveree functionality according to the present invention.
  • Fig. 11 illustrates the fields in the Response message according to the present invention. DETAILED DESCRIPTION OF THE .NVENTION
  • the present invention provides a method and apparatus for providing resource discovery using multicast scope selection.
  • the present invention provides a scope that may be varied in a dynamic fashion so that resources that do not need to be reached are not.
  • a feedback mechanism is provided wherein the resources can feedback information such as hop count, bandwidth, etc., back to the Discoverer. Such a feedback mechanism may be employed by the Discoverer in determining whether the scope may be increased for subsequent request messages.
  • Fig. 2 illustrates a Discoverer 210 and a Discoveree 220 from an OSI layer standpoint 200.
  • the protocol according to the present invention is used at the application layer 230 rather than at the lower layers 240.
  • a Discoverer 210 is the entity that wishes to discover a certain resource, while the Discoveree 220 is the resource that is being discovered.
  • a Request 250 is the message that is sent by the Discoverer 210 to the well- known multicast group.
  • a Confirm 252 is the message that a Discoveree 220 unicasts to the Discoverer 210 upon receiving a Request message 250 indicating that the Discoverer 210 could use this resource.
  • Reject 254 is the message that a Discoveree 220 unicasts to the Discoverer 210 upon receiving a Request message 250 indicating that the Discoverer 210 can not use this resource.
  • Figure 3 illustrates a generic distribution 300 of Discoverers and Discoverees. Discoverers are depicted by u 310-328 (for users) while
  • Discoverees are depicted by R 340-358 (for resources). It is possible that - an entity which is a Discoverer in one case is a Discoveree in another.
  • the proximity of a Discoveree from a Discoverer is defined as the number of hops that a message takes to go from the Discoverer to the Discoveree. All the Discoverees join a well-known multicast group.
  • Fig. 4 indicates the fields 400 that are included in the request message. These are the Hop Count 410, ThresholdHopCount 420, DontRespondList 430, HopByHopParameters 440 and DestinationParameters 450.
  • the Hop Count 410 is used to determine whether the message propagates any further or not. Every node of the multicast tree that receives the request message decrements the Hop Count by one, and if the resulting value is not zero, it forwards it down the multicast tree.
  • the ThresholdHopCount 420 is used by the Discoveree to determine whether to respond to a request or not. If the Hop Count 410 is greater than this value, a Discoveree does not respond to the request message. Else, it responds either with a confirm or a reject. When a Discoverer retransmits a Request message with a larger scope (scope 2), all the discoverees that previously responded (when scope 1 was used) should not respond. ThesholdHopCount is one way of achieving that.
  • the DontRespondList 430 is a explicit list of Discoverees that do not need to respond. If a Discoveree finds itself listed on this list, it does not respond to the request message.
  • the HopbyHopParameters 440 are parameters which are inspected and possibly modified by intermediate entities in the multicast tree. For instance, one such parameter could be bandwidth reserved, which could be modified by the intermediate nodes depending on the amount reserved in the incoming link.
  • the DestinationParameters 450 are parameters used by the Discoveree to help determine whether to respond using a confirm or a reject message. They are not inspected or modified by the intermediate nodes.
  • Fig. 5 illustrates scope variations 500 as applied to distributed resources.
  • the user 510 is shown in Fig. 5 in the center.
  • the user wishes to discover resource R 3 .
  • the first scope 520 does not encompass any resources, i.e., there are no resources within the first scope 520.
  • the second scope 522 encompasses R 1 524 and R 2 526.
  • the third scope 530 encompasses R, 524, R 2 526 and R 3 540, but not R 4 542.
  • the fourth scope 550 while greater than the second scope 522, but less than the third scope 530, is just sufficient to encompass R 3 540.
  • Fig. 6 illustrates the system architecture 600 of a Discoverer according to the present invention.
  • the discovery unit 610 may either be co-located with the applications 620 or may reside separately from the application 610.
  • An example of the former case is when a PSTN-H.323 gateway implements both the H.323 stack as well as the discovery unit.
  • An example of the latter case is when a H.323 Single Use Device (SUD) implements the light-weight H.323 profile, while the discovery unit could be located at a separate unit, e.g., at a Base Transceiver Station (BTS), Base Station Controller (BSC) or Mobile Services Switching Center (MSC) for a mobile H.323 SUD.
  • BTS Base Transceiver Station
  • BSC Base Station Controller
  • MSC Mobile Services Switching Center
  • the discovery unit 610 receives a notification 620 from an application 610 to begin the discovery process.
  • the discovery unit 610 sets the appropriate timer 630 and transmits a Discover message 640.
  • the remaining sequence of events that occur at the Discoverer, including receipt of a Reject or Confirm Message 650 are as shown in Fig. 8 herein below.
  • Fig. 7 illustrates the system architecture 700 of the Discoveree according to the present invention.
  • the discovery unit 710 of a Discoveree 700 may either be co-located with the application 720 or it may be separate.
  • the discovery unit 710 contacts the suitable application 720 to determine whether to confirm or reject message 740 needs to be sent to the Discoverer.
  • the Discoveree also modifies the Hop Count and hop-by-hop parameters field, and if the Hop Count is greater than zero, passes the Request message down the multicast tree.
  • the Discoverer 610 sets the scope in the request message 640, the Discoverer 610 then multicasts the request message to the well-known multicast group, after which it starts a retransmission timer 630.
  • Intermediate nodes in addition to decrementing the HopCount, inspect and could modify the HopByHopParameters field of the request message. If the HopCount is zero, the packet is not forwarded; else it is forwarded to the next node in a multicast tree.
  • the- Discoveree receives the request message 730.
  • the Discoveree 710 then checks the values of the various fields in the request message 730. If the HopCount is greater than the ThresholdHopCount or if the Discoveree 710 is listed in the DontRespondList, then the Discoveree 710 discards the request message. Else, the Discoveree 710 determines whether to respond using a confirm or a reject message 740 based on the value of other parameters in the request message.
  • the confirm/reject message would include the Hop Count that was present in the request message at the time it was received by the Discoveree 710.
  • the Discoveree 710 inspects and potentially modifies the HopbyHopParameters field before including it in the confirm/reject message.
  • a Discoveree 710 is outside the scope of the multicast message, then it does not receive the request message. If a sufficient number of confirm messages 650 (or a confirm message from a desired resource) are not received by the Discoverer 610 prior to the expiration of the retransmission timer 630, then the Discoverer 610 may generate a new request message 640 with updated fields.
  • Fig. 8 illustrates a flow chart 800 of the Disc ⁇ verer functionality according to the present invention. The logistics that would occur at the Discoverer are then indicated in Fig. 8. First the scope is set in the request 810. A request is then transmitted to a well-know multicast group 820. Thereafter, a timer is initiated 822.
  • the Discoverer waits for response and a determination is made to whether the timer has expired 824. If not - 826, a determination is made as to whether the desired Confirm was received 828. If not 830, the Discoverer continues to wait 824. If the desired Confirm is received 832, the process ends 834. If the timer expires 840, a determination is made as to whether the desired Confirm was received 842. If yes 844, the process terminates 846. If not 850, the Discoverer inspects the fields in any receive reject/confirm message and based on any policies, determine if a scope increase is allowed 852. According to the determination, the Discoverer decides whether the scope may be increased 854. . If not 856, the process terminates 846. If an increase may be allowed to the scope 860, the scope is increased and the timer value is changed 862. Then, a Request is again transmitted 820 and the process continues.
  • the Discoverer increase the scope in the request message suitably.
  • the scope increase could be based on some function (additive or multiplicative increase) or based on a look-up table.
  • the Discoverer 510 may include the resources that responded previously in the DontRespondList and/or include a ThresholdHopCount whose value equals the value of the HopCount in the previously sent request message.
  • a Discoverer 510 may need to rediscover resources at a later time due to topological changes or failures.
  • the Discoverer 510 transmits a new request message, it sets the scope to a new best estimate of the proximity. This value, could for instance, equal the proximity of the previously discovered Discoveree 540.
  • the ITU-T H.323 umbrella of standards for multimedia conferencing over packet switched networks describes the roles of terminals and gatekeepers. Terminals have to discover gatekeepers and register with one gatekeeper. In addition, to facilitate inter-gatekeeper communication, gatekeepers have to discover other gatekeepers and register with one or more of them. The proposed method could be used in this case for discovering the gatekeepers.
  • the scope can be varied in a dynamic fashion, as against use of a static value for the scope.
  • the value of the set scope usually has to be sufficiently large so that all desired resources that need to be discovered are reached by the request message.
  • the scope is chosen so that resources that don't need to be reached are not.
  • the present invention results in an efficient use of network bandwidth. Efficient use of network bandwidth is also achieved by the fact that resources that are not required to respond, for example, because, they have previously responded, are either explicitly listed in the request message or - find that the received Hop Count is greater than the ThresholdHopCount, and hence, do not respond.
  • Fig. 9 illustrates a block diagram of a discoverer unit 900 implementing a resource discovery procedure according to the present invention.
  • the present invention is typically implemented using a processor 910 and at least one type of memory or buffer 920 such as random access memory (RAM) or read-only memory (ROM). It is envisioned that an interface device (not shown) may coupled to the discoverer unit 900.
  • the processor 910 operates under the control of an operating system
  • the processor 910 executes one or more computer programs/applet 926 under the control of the operating system 924.
  • the present invention comprises a method for providing resource discovery using multicast scope selection that is preferably implemented in the operating system 924 and/or computer programs/applets 926.
  • Fig. 10 illustrates a flow chart 1000 of the Discoveree functionality according to the present invention.
  • First a Request message is received 1010.
  • the Hop Count is then decremented and the hop-by-hop parameters are modified 1020.
  • Fig. 11 illustrates the fields in the Response message 1100 according to the present invention.
  • the fields in the Response message 1100 include a decision filed 1110 for indicating whether the response is a confirm or a reject message.
  • a ReturnedHopCount field 1120 has the value of the Hop Count field at the time it was received by the Discvoeree in the Request message.
  • the ReturnedHopByHopParameters field 1130 has the value of the HopByHopParameters received by the Discoveree in the Request message and after any suitable modification by the Discoveree.
  • the present invention provides a method for resource discovery in computer networks.
  • resource discovery e.g., use of the service location protocol (SLP), use of the SRV record in the DNS etc.
  • SLP service location protocol
  • the present invention thus provides an efficient way of performing resource discovery using an existing mechanism of multicast scope.

Abstract

A method and apparatus for providing resource discovery using multicast scope selection is disclosed. The method includes the discoverer sending a first request message having a first selected scope to a known multicast group, setting a timer after the first request message is sent, detecting whether a confirm message is received from an endpoint before the timer expires, terminating when a confirm message is received from an endpoint prior to the expiration of the timer, determining whether a scope increase is allowed when a confirm message is not received from an endpoint before the expiration of the timer, terminating when a scope increase is not allowed, increasing the scope to the second selected scope when a scope increase is allowed, resetting the timer and sending a second request message having the second selected scope when a confirm message is not received from an endpoint in response to the first request message, the second selected scope being greater than the first selected scope.

Description

METHOD AND APPARATUS FOR PROVIDING RESOURCE DISCOVERY USING MULTICAST SCOPE
BACKGROUND OF THE INVENTION
1. Field of the Invention.
This invention relates in general to a multimedia communications, and more particularly to a method and apparatus for providing resource discovery using multicast scope selection.
2. Description of Related Art. Of the communication tools found in most offices today, such as E- mail, fax machines, pagers, and cellular phones, videoconferencing has yet to make the short list. However, this is changing, as companies move to take advantage of lower system costs and emerging new standards. For example, videoconferencing over an enterprise IP network is very appealing. It makes better use of an organization's funds rather than sinking additional investments in ISDN lines. Up to now, ISDN has been the only reliable way to connect video-enabled workstations and conference-room-based systems. However, the technology isn't readily available, and it's still expensive. Nevertheless, H.323-standard LAN-operable DVC (desktop videoconferencing) solutions are available.
The H.323 standards architecture specifies gateways and gatekeepers that enable connections among LAN-based DVC units, ISDN- connected H.320 units, analog telephone-connected H.324 devices, and ISDN and POTS telephones. One rapidly emerging branch of this market includes gateway and billing server systems devoted to Internet telephony. The H.323 standard provides a foundation .or audio, video, and data communications across IP-based networks, including the Internet. By complying to H.323, multimedia products and applications from multiple vendors can interoperate, thereby allowing users to communicate without concern for compatibility. H.323 will be the keystone for LAN-based products for consumer, business, entertainment, and professional applications.
More specifically, H.323 is an umbrella recommendation from the International Telecommunications Union (ITU) that sets standards for multimedia communications over packet switched networks. This includes Local Area Networks (LANs) that do not provide a guaranteed Quality of Service (QoS), which dominate today's corporate desktops and include packet-switched TCP/IP and IPX over Ethernet, Fast Ethernet and Token Ring network technologies. Therefore, the H.323 standards are important building blocks for a broad new range of collaborative, LAN-based applications for multimedia communications.
The H.323 specification was approved in 1996 by the ITU's Study Group 16. Version 2 was approved in January 1998. The standard is broad in scope and includes both stand-alone devices and embedded personal computer technology as well as point-to-point and multipoint conferences. H.323 also addresses call control, multimedia management, and bandwidth management as well as interfaces between LANs and other networks. H.323 is the latest of the recommendations on the H.32X series which specifies standards for videoconferencing over a variety of networks. H.323 includes much of the work done since the approval of the H.320 recommendation in 1990, which is a specification for multimedia over circuit switched digital telephone networks. The H.32X is composed of the following recommendations:
• H.320 allows videoconferencing over narrowband switched ISDN.
• H.321 is for videoconferencing over broadband ISDN ATM LAN.
• H.322 allows videoconferencing over Guaranteed bandwidth packet switched networks.
• H.323 allows videoconferencing over non-guaranteed bandwidth packet switched networks.
• H.324 is for videoconferencing over PSTN or POTS (the analog phone system).
The H.323 Protocol Stack supports many real time applications that the industry is eager to use through the Internet such as: Desktop
Videoconferencing, Internet Telephony and Videotelephony, Collaborative
Computing, Business Conference Calling, Distance Learning, Support and
Help Desk Applications, etc. These applications already exist in the market, but most of them do not address the problem of how to run these applications over a packet switched network like the Internet and most corporate LANs which are based on the TCP/IP suite of protocols. With the pressure of the market to use these kinds of applications over the Internet,
H.323 emerges as a possible solution to the business needs.
H.323 defines four major components for a network-based communications system. Fig. 1 illustrates a H.323 system 100. In Fig. 1 , the four major components of a H.323 system 100 are shown including their interaction with existing networks. These components interact with LANs that may not provide QoS. The four components include Terminals 110, Gateways 120, Gatekeepers 130 and Multipoint Control Units (MCUs) 140.
These four elements 110-140 are specified only for the Application Layer of the Internet Layer Model. There is no specification about the lower layers (Transport, Network, Data link and physical layers). This characteristic makes H.323 flexible and allows H.323 devices to communicate with devices of other networks.
H.323 Terminals 110 are the client software that runs in the end user computers that allow users to communicate in real time using all the power of multimedia. These terminals are also called Endpoints.
A Gateway 120 is a component of the H.323 specification that provides world wide connectivity and interoperability from LAN. That is, a Gateway 120 will allow computers connected to a LAN to communicate to regular phones 150 connected to the PSTN 152, to digital phones 154 (H.320 terminals) connected to an ISDN network 156. A gateway 120 also translates between different types of codecs used by different kinds of terminals, maps call signaling between Q.931 to H.225 and maps control signaling between H.242/H.243 to H.245.
In general, a Gateway 120 is a component that makes possible to interconnect a packet switched network to other types of networks. If connections to different types of networks are not required, then a Gateway 120 is not required since terminals can communicate between them if they are on the same LAN. Terminals communicate with gateways using H.225.0 and H.245 protocols. A Gatekeeper 130 is an H.323 component that performs four basic functions:
• Address Translation: It is the mechanism that allows to have different kinds addressing systems. For example, regular phone numbers (E.164 addresses) can be used in conjunction with email addresses. The Gatekeeper 130 allows to communicate with terminals addressed in different ways.
• Admission Control: The Gatekeeper 130 could reject calls from users. An user must be registered with the Gatekeeper 130 in " order to complete a call.
• Bandwidth Control: Networks managers can restrict the amount of bandwidth used for videoconference, which provide a way to control LAN traffic. The remaining of the bandwidth can be used then for web requests, email, file transfers, etc. • Zone Management: The Gatekeepers 130 provide the functions of
Address Translation, Admission Control and Bandwidth control for Terminals 110, MCUs 140 and Gateways 120 registered with the Gatekeeper 130 in its zone of control. This zone is called H.323 zone.
The functions of the Gatekeeper 130 are included in the Gateway 120 by most vendors, although they are logically separate and they perform different kinds of functions.
The Multipoint Control Unit (MCU) 140 is a logical device that supports conferences between two or more endpoints. The MCU 140 typically is integrated with the implementation of the gateway, so in most implementations the MCU 140 won't be a separate computer performing conferencing functions. Also, with a combined implementation of the functions of the MCU 140 with the functions of the gateway 120, conferences among participants of different networks (LAN and PSTN) will have better performance than divided implementations.
In operation, several applications need to discover resources of different kinds depending on different criteria. For instance, in the H.323 standard, a Terminal 110 may need to discover a suitable Gatekeeper 130 so that it may register with it. Such resource discovery needs to occur in a dynamic fashion to account for possible topology changes and failures within the network. Moreover, the mechanism needs to be simple and efficient.
It can be seen then that there is a need for an efficient way of implementing the method of multicasting to a well-known group of resources when dynamic resource discovery is warranted.
It can also be seen that there is a need for a method and apparatus for providing resource discovery using multicast scope selection.
SUMMARY OF THE INVENTION To overcome the limitations in the prior art described above, and to overcome other limitations that will become apparent upon reading and understanding the present specification, the present invention discloses a method and apparatus for providing resource discovery using multicast
scope selection.
The present invention solves the above-described problems by providing a scope that may be varied in a dynamic fashion so that resources that do not need to be reached are not. A method in accordance with the principles of the present invention includes sending a first request message having a first selected scope, analyzing whether a confirm message is received in response to the first request message and sending a second request message having a second selected scope when a confirm message is not received in response to the first request message, the second selected scope being greater than the first
selected scope.
Other embodiments of a system in accordance with the principles of the invention may include alternative or optional additional aspects. One such aspect of the present invention is that the analyzing further includes setting a timer after the first request message is sent, detecting whether a confirm message is received before the timer expires and terminating the resource discovery procedure when a confirm message is received prior to the expiration of the timer. Another aspect of the present invention is that the detecting further includes determining whether a scope increase is allowed when a confirm message is not received before the expiration of the timer, terminating the resource discovery procedure when a scope increase is not allowed, increasing the scope to the second selected scope when a scope increase is allowed and resetting the timer.
Another aspect of the present invention is that the sending further includes transmitting the request message to a known multicast group.
Another aspect of the present invention is that the scope comprises a Hop Count, the Hop Count represent a number of nodes in a multicast tree that the request message propagates.
Another aspect of the present invention is that the Hop Count is decremented at a node in the multicast tree receiving the request message and the request message is forwarded to a next node in the multicast tree. Another aspect of the present invention is that the request message further comprises a Threshold Hop Count for limiting the propagation of the request message in the multicast tree.
Another aspect of the present invention is that the method further includes comparing the Threshold Hop Count to the scope, preventing a response to the request message when the scope is greater than the Threshold Hop Count and responding to the request message when the scope is not greater than the Threshold Hop Count. Another aspect of the present invention is that the request message further comprises parameters for analyzes by a node receiving the request
message.
Another aspect of the present invention is that the parameters further comprises hop-by-hop parameters, the hop-by-hop parameters being modified by intermediate nodes during the propagation of the request message in the- multicast tree.
Another aspect of the present invention is that the parameters further comprise destination parameters, the destination parameters being used by an resource being discovered using the request message to determine whether the resource responds using a confirm or a reject message.
Another aspect of the present invention is that a discoverer is provided including a discovery unit and an application, operatively coupled to the discovery unit, the application sending a notification to the discovery unit for locating an endpoint application, wherein the discovery unit sends a first request message having a first selected scope to a multicast group, analyzes whether a confirm message is received in response to the first request message; and sends a second request message having a second selected scope when a confirm message is not received in response to the first request message, the second selected scope being greater than the first selected scope.
Another aspect of the present invention is that a timer is provided for setting a window for receiving the confirm message, wherein the discovery unit sets the timer after the first request message is sent, detects whether a confirm message is received before the timer expires and terminates the location of an endpoint when a confirm message is received prior to the expiration of the timer.
Another aspect of the present invention is that the discovery unit determines whether a scope increase is allowed when a confirm message is not received before the expiration of the timer, terminates the location of an - endpoint when a scope increase is not allowed, increases the scope to the second selected scope when a scope increase is allowed and resets the timer. Another aspect of the present invention is that the application and the discovery unit are co-located.
Another aspect of the present invention is that the application and the discovery unit are not co-located.
Another aspect of the present invention is that discovery unit includes a base transceiver station, a base station controller or a mobile services switching center.
Another aspect of the present invention is that the application comprises a mobile terminal.
Another aspect of the present invention is that a discovereree is provided at the receiving end, the discoveree, upon receiving a request message, decrementing the Hop Count, modifying the hop-by-hop parameters, examining whether the Hop Count is zero, passing the request message down the multicast tree when the Hop Count is zero, examining the destination parameters, and suitably sending a confi m or rejection message to the discoverer.
These and various other advantages and features of novelty which characterize the invention are pointed out with particularity in the claims annexed hereto and form a part hereof. However, for a better understanding of the invention, its advantages, and the objects obtained by its use, reference should be made to the drawings which form a further part hereof, and to accompanying descriptive matter, in which there are illustrated and described specific examples of an apparatus in accordance with the invention.
BRIEF DESCRIPTION OF THE DRAWINGS
Referring now to the drawings in which like reference numbers represent corresponding parts throughout:
Fig. 1 illustrates a H.323 system; Fig. 2 illustrates a Discoverer and a Discoveree from an OSI layer standpoint;
Figure 3 illustrates a generic distribution of Discoverers and Discoverees;
Fig. 4 indicates the fields that are included in the request message; Fig. 5 illustrates scope variations as applied to distributed resources;
Fig. 6 illustrates the system architecture of a Discoverer according to the present invention;
Fig. 7 illustrates the system architecture 700 of the Discoveree according to the present invention; Fig. 8 illustrates a flow chart of the Discoverer functionality according to the present invention;
Fig. 9 illustrates a block diagram of a discoverer unit implementing a resource discovery procedure according to the present invention;
Fig. 10 illustrates a flow chart of the Discoveree functionality according to the present invention; and
Fig. 11 illustrates the fields in the Response message according to the present invention. DETAILED DESCRIPTION OF THE .NVENTION
In the following description of the exemplary embodiment, reference is made to the accompanying drawings which form a part hereof, and in which is shown by way of illustration the specific embodiment in which the invention may be practiced. It is to be understood that other embodiments may be utilized as structural changes may be made without departing fronr the scope of the present invention.
The present invention provides a method and apparatus for providing resource discovery using multicast scope selection. The present invention provides a scope that may be varied in a dynamic fashion so that resources that do not need to be reached are not. A feedback mechanism is provided wherein the resources can feedback information such as hop count, bandwidth, etc., back to the Discoverer. Such a feedback mechanism may be employed by the Discoverer in determining whether the scope may be increased for subsequent request messages.
Fig. 2 illustrates a Discoverer 210 and a Discoveree 220 from an OSI layer standpoint 200. As shown, the protocol according to the present invention is used at the application layer 230 rather than at the lower layers 240. A Discoverer 210 is the entity that wishes to discover a certain resource, while the Discoveree 220 is the resource that is being discovered. A Request 250 is the message that is sent by the Discoverer 210 to the well- known multicast group. A Confirm 252 is the message that a Discoveree 220 unicasts to the Discoverer 210 upon receiving a Request message 250 indicating that the Discoverer 210 could use this resource. Finally, Reject 254 is the message that a Discoveree 220 unicasts to the Discoverer 210 upon receiving a Request message 250 indicating that the Discoverer 210 can not use this resource.
Figure 3 illustrates a generic distribution 300 of Discoverers and Discoverees. Discoverers are depicted by u 310-328 (for users) while
Discoverees are depicted by R 340-358 (for resources). It is possible that - an entity which is a Discoverer in one case is a Discoveree in another. The proximity of a Discoveree from a Discoverer is defined as the number of hops that a message takes to go from the Discoverer to the Discoveree. All the Discoverees join a well-known multicast group.
Fig. 4 indicates the fields 400 that are included in the request message. These are the Hop Count 410, ThresholdHopCount 420, DontRespondList 430, HopByHopParameters 440 and DestinationParameters 450. The Hop Count 410 is used to determine whether the message propagates any further or not. Every node of the multicast tree that receives the request message decrements the Hop Count by one, and if the resulting value is not zero, it forwards it down the multicast tree.
The ThresholdHopCount 420 is used by the Discoveree to determine whether to respond to a request or not. If the Hop Count 410 is greater than this value, a Discoveree does not respond to the request message. Else, it responds either with a confirm or a reject. When a Discoverer retransmits a Request message with a larger scope (scope 2), all the discoverees that previously responded (when scope 1 was used) should not respond. ThesholdHopCount is one way of achieving that. The DontRespondList 430 is a explicit list of Discoverees that do not need to respond. If a Discoveree finds itself listed on this list, it does not respond to the request message. Else, it responds either with a confirm or a reject. The HopbyHopParameters 440 are parameters which are inspected and possibly modified by intermediate entities in the multicast tree. For instance, one such parameter could be bandwidth reserved, which could be modified by the intermediate nodes depending on the amount reserved in the incoming link. The DestinationParameters 450 are parameters used by the Discoveree to help determine whether to respond using a confirm or a reject message. They are not inspected or modified by the intermediate nodes.
At the beginning of the discovery process, the Discoverer sets the scope in the request message to the best estimate of the proximity of the desired Discoverees. Fig. 5 illustrates scope variations 500 as applied to distributed resources. The user 510 is shown in Fig. 5 in the center. Here, the user wishes to discover resource R3. The first scope 520 does not encompass any resources, i.e., there are no resources within the first scope 520. The second scope 522 encompasses R1 524 and R2 526. The third scope 530 encompasses R, 524, R2 526 and R3 540, but not R4 542. The fourth scope 550, while greater than the second scope 522, but less than the third scope 530, is just sufficient to encompass R3540.
Fig. 6 illustrates the system architecture 600 of a Discoverer according to the present invention. The discovery unit 610 may either be co-located with the applications 620 or may reside separately from the application 610. An example of the former case is when a PSTN-H.323 gateway implements both the H.323 stack as well as the discovery unit. An example of the latter case is when a H.323 Single Use Device (SUD) implements the light-weight H.323 profile, while the discovery unit could be located at a separate unit, e.g., at a Base Transceiver Station (BTS), Base Station Controller (BSC) or Mobile Services Switching Center (MSC) for a mobile H.323 SUD.
The discovery unit 610 receives a notification 620 from an application 610 to begin the discovery process. The discovery unit 610 sets the appropriate timer 630 and transmits a Discover message 640. The remaining sequence of events that occur at the Discoverer, including receipt of a Reject or Confirm Message 650 are as shown in Fig. 8 herein below. Fig. 7 illustrates the system architecture 700 of the Discoveree according to the present invention. As in the case of the Discoverer, the discovery unit 710 of a Discoveree 700 may either be co-located with the application 720 or it may be separate. Upon receiving the Discover message 730, the discovery unit 710 contacts the suitable application 720 to determine whether to confirm or reject message 740 needs to be sent to the Discoverer. The Discoveree also modifies the Hop Count and hop-by-hop parameters field, and if the Hop Count is greater than zero, passes the Request message down the multicast tree.
Referring to both Figs. 6 and 7, after the Discoverer 610 sets the scope in the request message 640, the Discoverer 610 then multicasts the request message to the well-known multicast group, after which it starts a retransmission timer 630. Intermediate nodes, in addition to decrementing the HopCount, inspect and could modify the HopByHopParameters field of the request message. If the HopCount is zero, the packet is not forwarded; else it is forwarded to the next node in a multicast tree.
If a Discoveree 710 is within the scope of the multicast message, the- Discoveree receives the request message 730. The Discoveree 710 then checks the values of the various fields in the request message 730. If the HopCount is greater than the ThresholdHopCount or if the Discoveree 710 is listed in the DontRespondList, then the Discoveree 710 discards the request message. Else, the Discoveree 710 determines whether to respond using a confirm or a reject message 740 based on the value of other parameters in the request message. The confirm/reject message would include the Hop Count that was present in the request message at the time it was received by the Discoveree 710. In addition, the Discoveree 710 inspects and potentially modifies the HopbyHopParameters field before including it in the confirm/reject message.
If a Discoveree 710 is outside the scope of the multicast message, then it does not receive the request message. If a sufficient number of confirm messages 650 (or a confirm message from a desired resource) are not received by the Discoverer 610 prior to the expiration of the retransmission timer 630, then the Discoverer 610 may generate a new request message 640 with updated fields. Fig. 8 illustrates a flow chart 800 of the Discυverer functionality according to the present invention. The logistics that would occur at the Discoverer are then indicated in Fig. 8. First the scope is set in the request 810. A request is then transmitted to a well-know multicast group 820. Thereafter, a timer is initiated 822. Next, the Discoverer waits for response and a determination is made to whether the timer has expired 824. If not - 826, a determination is made as to whether the desired Confirm was received 828. If not 830, the Discoverer continues to wait 824. If the desired Confirm is received 832, the process ends 834. If the timer expires 840, a determination is made as to whether the desired Confirm was received 842. If yes 844, the process terminates 846. If not 850, the Discoverer inspects the fields in any receive reject/confirm message and based on any policies, determine if a scope increase is allowed 852. According to the determination, the Discoverer decides whether the scope may be increased 854. . If not 856, the process terminates 846. If an increase may be allowed to the scope 860, the scope is increased and the timer value is changed 862. Then, a Request is again transmitted 820 and the process continues.
Accordingly, if a new request message is to be issued, then the Discoverer increase the scope in the request message suitably. For instance, the scope increase could be based on some function (additive or multiplicative increase) or based on a look-up table.
Returning to Fig. 5, resource R3 540 is attempting to be discovered. The first two multicast request messages 520, 522 are of insufficient scope, while the third request message 530 has a larger than necessary scope. Based on the returned Hop Count in the confirm/reject message to the third request message 530, any future request messages could have an efficient scope as indicated in the fourth request message 550. The Discoverer 510 may include the resources that responded previously in the DontRespondList and/or include a ThresholdHopCount whose value equals the value of the HopCount in the previously sent request message.
A Discoverer 510 may need to rediscover resources at a later time due to topological changes or failures. When the Discoverer 510 transmits a new request message, it sets the scope to a new best estimate of the proximity. This value, could for instance, equal the proximity of the previously discovered Discoveree 540.
The ITU-T H.323 umbrella of standards for multimedia conferencing over packet switched networks describes the roles of terminals and gatekeepers. Terminals have to discover gatekeepers and register with one gatekeeper. In addition, to facilitate inter-gatekeeper communication, gatekeepers have to discover other gatekeepers and register with one or more of them. The proposed method could be used in this case for discovering the gatekeepers.
Accordingly, the scope can be varied in a dynamic fashion, as against use of a static value for the scope. In the case where the scope is set statically, the value of the set scope usually has to be sufficiently large so that all desired resources that need to be discovered are reached by the request message. However, according to the presont invention, the scope is chosen so that resources that don't need to be reached are not. Hence, the present invention results in an efficient use of network bandwidth. Efficient use of network bandwidth is also achieved by the fact that resources that are not required to respond, for example, because, they have previously responded, are either explicitly listed in the request message or - find that the received Hop Count is greater than the ThresholdHopCount, and hence, do not respond.
Fig. 9 illustrates a block diagram of a discoverer unit 900 implementing a resource discovery procedure according to the present invention. The present invention is typically implemented using a processor 910 and at least one type of memory or buffer 920 such as random access memory (RAM) or read-only memory (ROM). It is envisioned that an interface device (not shown) may coupled to the discoverer unit 900. The processor 910 operates under the control of an operating system
924. The processor 910 executes one or more computer programs/applet 926 under the control of the operating system 924. The present invention comprises a method for providing resource discovery using multicast scope selection that is preferably implemented in the operating system 924 and/or computer programs/applets 926.
Fig. 10 illustrates a flow chart 1000 of the Discoveree functionality according to the present invention. First a Request message is received 1010. The Hop Count is then decremented and the hop-by-hop parameters are modified 1020. Next, a determination is made as to whether the hop count is equal to zero 1030. If not 1032, the Request message is duplicated and passed down the multicast tree 1040 and then the destination parameters are examined 1050. If yes 1034, the Discoveree merely examines the destination parameters 1040. Thereafter, a unicast confirm or reject message is sent to the discoverer 1050.
Fig. 11 illustrates the fields in the Response message 1100 according to the present invention. The fields in the Response message 1100 include a decision filed 1110 for indicating whether the response is a confirm or a reject message. A ReturnedHopCount field 1120 has the value of the Hop Count field at the time it was received by the Discvoeree in the Request message. The ReturnedHopByHopParameters field 1130 has the value of the HopByHopParameters received by the Discoveree in the Request message and after any suitable modification by the Discoveree.
In summary, the present invention provides a method for resource discovery in computer networks. Several methods are available for resource discovery, e.g., use of the service location protocol (SLP), use of the SRV record in the DNS etc. The present invention thus provides an efficient way of performing resource discovery using an existing mechanism of multicast scope. The foregoing description of the exemplary embodiment of the invention has been presented for the purposes of illustration and description. It is not intended to be exhaustive or to limit the invention to the precise form disclosed. Many modifications and variations are possible in light of the above teaching. It is intended that the scope of tho invention be limited not with this detailed description, but rather by the claims appended hereto.

Claims

WHAT IS CLAIMED IS:
1. A method for providing resource discovery comprising: sending a first request message having a first selected scope; analyzing whether a confirm message is received in response to the first request message; and sending a second request message having a second selected scop& when a confirm message is not received in response to the first request message, the second selected scope being greater than the first selected
scope.
2. The method of claim 1 wherein the analyzing further comprises: setting a timer after the first request message is sent; detecting whether a confirm message is received before the timer
expires; and terminating the resource discovery procedure when a confirm message is received prior to the expiration of the timer.
3. The method of claim 2 wherein the detecting further comprises: determining whether a scope increase is allowed when a confirm message is not received before the expiration of the timer; terminating the resource discovery procedure when a scope increase is not allowed; increasing the scope to the second selected scope when a scope increase is allowed; and resetting the timer.
4. The method of claim 3 wherein the determining further comprises inspecting fields of a response message and determining whether a scope increase is allowed based upon the response message and policies included therein.
5. The method of claim 1 wherein the sending further comprises transmitting the request message to a known multicast group.
6. The method of claim 1 wherein the scope comprises a hop count, the hop count representing a number of nodes in a multicast tree that the request message propagates.
7. The method of claim 6 further comprising decrementing the hop count at a node in the multicast tree receiving the request message and forwarding the request message to a next node in the multicast tree.
8. The method of claim 1 wherein the request message further comprises a threshold hop count for avoiding the propagation of a duplicate request message from a node receiving the request message.
9. The method of claim 8 further comprising: comparing the threshold hop count to the scope; preventing a response to the request message when the scope is greater than the threshold hop count; and responding to the request message when the scope is not greater than the threshold hop count.
10. The method of claim 1 wherein the request message further comprises parameters for analyzes by a node receiving the request message.
11. The method of claim 10 wherein the parameters further comprises hop-by-hop parameters, the hop-by-hop parameters being modified by intermediate nodes during the propagation of the request message in the multicast tree.
12. The method of claim 10 wherein the parameters further comprise destination parameters, the destination parameters being used by a resource being discovered using the request message to determine whether the resource responds using a confirm or a reject message.
13. The method of claim 1 further comprising: receiving the request message at a node in a multicast tree; decrementing a hop count included in the scope; modifying hop-by-hop parameters; determining whether the hop count is equal to zero; passing the request message down the multicast tree when the hop count is not equal to zero; examining destination parameters in the request message; and unicasting a response message in response to the request message.
14. The method of claim 13 wherein the response message comprises a decision field for indicating whether the response is a confirm message or a reject message, a returned hop count representing a value of the hop count field at the time the request message was received by the node and a returned hop-by-hop parameter field representing a value of hop-by-hop parameters received by the node in the request message after modification by the node.
15. A method for locating an endpoint fo» setting up a connection, the method comprising: sending a first request message having a first selected scope to a known multicast group; setting a timer after the first request message is sent; detecting whether a confirm message is received from an endpoint - before the timer expires; terminating when a confirm message is received from an endpoint prior to the expiration of the timer; determining whether a scope increase is allowed when a confirm message is not received from an endpoint before the expiration of the timer; terminating when a scope increase is not allowed; increasing the scope to the second selected scope when a scope increase is allowed; resetting the timer; and sending a second request message having the second selected scope when a confirm message is not received from an endpoint in response to the first request message, the second selected scope being greater than the first selected scope.
16. The method of claim 15 wherein the determining further comprises inspecting fields of a response message and determining whether a scope increase is allowed based upon the response message and policies included therein.
17. The method of claim 15 wherein the jcope comprises a hop count, the hop count representing a number of nodes in a multicast tree that the request message propagates.
18. The method of claim 17 further comprising decrementing the hop count at a node in the multicast tree receiving the request message and forwarding the request message to a next node in the multicast tree.
19. The method of claim 15 wherein the request message further comprises a threshold hop count for limiting the propagation of the request message in the multicast tree.
20. The method of claim 19 further comprising: comparing the threshold hop count to the scope; preventing a response to the request message when the scope is greater than the threshold hop count; and responding to the request message when the scope is not greater than the threshold hop count.
21. The method of claim 15 wherein the request message further comprises parameters for analyzes by a node receiving the request message.
22. The method of claim 21 wherein the parameters further comprises hop-by-hop parameters, the hop-by-hop parameters being modified by intermediate nodes during the propagation of the request message in the multicast tree.
23. The method of claim 21 wherein the parameters further comprise destination parameters, the destination parameters being used by an resource being discovered using the request message to determine whether the resource responds using a confirm or a reject message.
24. The method of claim 15 further comprising: receiving the request message at a node in a multicast tree; decrementing a hop count included in the scope; modifying hop-by-hop parameters; determining whether the hop count is equal to zero; passing the request message down the multicast tree when the hop count is not equal to zero; examining destination parameters in the request message; and unicasting a response message in response to the request message.
25. The method of claim 24 wherein the .esponse message comprises a decision field for indicating whether the response is a confirm message or a reject message, a returned hop count representing a value of the hop count field at the time the request message was received by the node and a returned hop-by-hop parameter field representing a value of hop-by-hop parameters received by the node in the request message after- modification by the node.
26. An article of manufacture for providing resource discovery using multicast scope selection, the article of manufacture comprising a computer readable medium having instructions for causing a processor to locate a resource for establishing a connection thereto according to a method, the method comprising: sending a first request message having a first selected scope; analyzing whether a confirm message is received in response to the first request message; and sending a second request message having a second selected scope when a confirm message is not received in response to the first request message, the second selected scope being greater than the first selected scope.
27. The article of manufacture of claim 23 wherein the analyzing further comprises: setting a timer after the first request message is sent; detecting whether a confirm message is received before the timer expires; and terminating the resource discovery procedure when a confirm message is received prior to the expiration of the timer.
28. The article of manufacture of claim 27 wherein the detecting further comprises: determining whether a scope increase is allowed when a confirm message is not received before the expiration of the timer; terminating the resource discovery procedure when a scope increase is not allowed; increasing the scope to the second selected scope when a scope increase is allowed; and resetting the timer.
29. The article of manufacture of claim 28 wherein the determining further comprises inspecting fields of a response message and determining whether a scope increase is allowed based upon the response message and policies included therein.
30. The article of manufacture of claim 26 wherein the sending further comprises transmitting the request message to a known multicast group.
31. The article of manufacture of claim 26 wherein the scope comprises a hop count, the hop count representing a number of nodes in a multicast tree that the request message propagates.
32. The article of manufacture of claim 31 further comprising decrementing the hop count at a node in the multicast tree receiving the request message and forwarding the request message to a next node in the multicast tree.
33. The article of manufacture of claim 26 wherein the request message further comprises a threshold hop count for limiting the propagation of the request message in the multicast tree.
34. The article of manufacture of claim 33 further comprising: comparing the threshold hop count to the scope; preventing a response to the request message when the scope is greater than the threshold hop count; and responding to the request message when the scope is not greater than the threshold hop count.
35. The article of manufacture of claim 20 wherein the request message further comprises parameters for analyzes by a node receiving the request message.
36. The article of manufacture of claim 35 wherein the parameters further comprises hop-by-hop parameters, the hop-by-hop parameters being modified by intermediate nodes during the propagation of the request message in the multicast tree.
37. The article of manufacture of claim 35 wherein the parameters further comprise destination parameters, the destination parameters being used by an resource being discovered using the request message to determine whether the resource responds using a confirm or a reject message.
38. The method of claim 26 further comprising: receiving the request message at a node in a multicast tree; decrementing a hop count included in the scope; modifying hop-by-hop parameters; determining whether the hop count is equal to zero; passing the request message down the multicast tree when the hop count is not equal to zero; examining destination parameters in the request message; and unicasting a response message in response to the request message.
39. The method of claim 38 wherein the iβsponse message comprises a decision field for indicating whether the response is a confirm message or a reject message, a returned hop count representing a value of the hop count field at the time the request message was received by the node and a returned hop-by-hop parameter field representing a value of hop-by-hop parameters received by the node in the request message after- modification by the node.
40. A discoverer, comprising: a discovery unit; and an application, operatively coupled to the discovery unit, the application sending a notification to the discovery unit for locating an endpoint application; wherein the discovery unit sends a first request message having a first selected scope to a multicast group, analyzes whether a desired confirm message is received in response to the first request message; and sends a second request message having a second selected scope when a desired confirm message is not received in response to the first request message, the second selected scope being greater than the first selected scope.
41. The discoverer of claim 40 further comprising a timer for setting a window for receiving the desired confirm message, wherein the discovery unit sets the timer after the first request message is sent, detects whether a confirm message is received before the timer expires and terminates the location of an endpoint when a confirm message is received prior to the expiration of the timer.
42. The discoverer of claim 41 wherein the discovery unit determines whether a scope increase is allowed when a desired confirm message is not received before the expiration of the timer, terminates the location of an endpoint when a scope increase is not allowed, increases the scope to the second selected scope when a scope increase is allowed and resets the timer.
43. The discoverer of claim 42 wherein the discovery unit determines whether a scope increase is allowed when a confirm message is not received before the expiration of the timer based upon the received response message and policies included therein.
44. The discoverer of claim 40 wherein the scope comprises a hop count, the hop count represent a number of nodes in a multicast tree that the request message propagates.
45. The discoverer of claim 40 wherein ti iβ request message further comprises a threshold hop count for forbidding the propagation of duplicate response messages in the multicast tree.
46. The discoverer of claim 40 wherein the request message further comprises parameters for analyzes by a node receiving the request message.
47. The discoverer of claim 46 wherein the parameters further comprises hop-by-hop parameters, the hop-by-hop parameters being modified by intermediate nodes during the propagation of the request message in the multicast tree.
48. The discoverer of claim 46 wherein the parameters further comprise destination parameters, the destination parameters being used by an endpoint to determine whether the resource responds using a confirm or a reject message.
49. The discoverer of claim 40 wherein the application and the discovery unit are co-located.
50. The discoverer of claim 40 wherein the application and the discovery unit are not co-located.
51. The discoverer of claim 50 wherein tι iβ discovery unit comprises a base transceiver station, a base station controller or a mobile services switching center.
52. The discoverer of claim 50 wherein the application comprises a mobile terminal.
PCT/US1999/023120 1998-10-06 1999-10-06 Method and apparatus for providing resource discovery using multicast scope WO2000021245A2 (en)

Priority Applications (4)

Application Number Priority Date Filing Date Title
AU64140/99A AU6414099A (en) 1998-10-06 1999-10-06 Method and apparatus for providing resource discovery using multicast scope
DE69911445T DE69911445T2 (en) 1998-10-06 1999-10-06 METHOD AND DEVICE FOR THE DISCOVERY OF MEANS USING MULTIPLE TRANSFER SCOPE
EP99951774A EP1119949B1 (en) 1998-10-06 1999-10-06 Method and apparatus for providing resource discovery using multicast scope
JP2000575260A JP3813442B2 (en) 1998-10-06 1999-10-06 Resource discovery method and apparatus using multicast range

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US09/167,933 1998-10-06
US09/167,933 US6426945B1 (en) 1998-10-06 1998-10-06 Method and apparatus for providing resource discovery using multicast scope

Publications (2)

Publication Number Publication Date
WO2000021245A2 true WO2000021245A2 (en) 2000-04-13
WO2000021245A3 WO2000021245A3 (en) 2000-07-20

Family

ID=22609416

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/US1999/023120 WO2000021245A2 (en) 1998-10-06 1999-10-06 Method and apparatus for providing resource discovery using multicast scope

Country Status (6)

Country Link
US (2) US6426945B1 (en)
EP (1) EP1119949B1 (en)
JP (1) JP3813442B2 (en)
AU (1) AU6414099A (en)
DE (1) DE69911445T2 (en)
WO (1) WO2000021245A2 (en)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP1185035A1 (en) * 2000-08-25 2002-03-06 Media-Streams.com AG System for discovering H.323 gatekeepers in data networks
WO2003047187A1 (en) * 2001-11-30 2003-06-05 Marconi Communications Spa Telecommunications network control method and network with said system
WO2005107306A1 (en) * 2004-04-30 2005-11-10 Siemens Aktiengesellschaft Multi-hop communication setup subject to boundary values
EP1649704A1 (en) * 2003-07-18 2006-04-26 Motorola, Inc. Method and apparatus in a wireless communication system for expediting a request for uplink resources

Families Citing this family (41)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6965591B1 (en) * 1998-09-14 2005-11-15 At&T Corp. System and method for gatekeeper-to-gatekeeper communication
US10511573B2 (en) 1998-10-30 2019-12-17 Virnetx, Inc. Agile network protocol for secure communications using secure domain names
US6757277B1 (en) * 1999-01-26 2004-06-29 Siemens Information And Communication Networks, Inc. System and method for coding algorithm policy adjustment in telephony-over-LAN networks
US7023839B1 (en) 1999-01-26 2006-04-04 Siemens Communications, Inc. System and method for dynamic codec alteration
US7295523B1 (en) * 1999-05-24 2007-11-13 Massachusetts Institute Of Technology System and method for resource discovery
US6859448B1 (en) * 1999-09-16 2005-02-22 At&T Corp. H.323 mobility protocol for terminal, user and service mobility
US6810015B1 (en) * 1999-10-15 2004-10-26 Siemens Information And Communication Networks, Inc. Apparatus and method for optimizing the use of multiple gateway in ToL systems
WO2001084341A1 (en) * 2000-05-02 2001-11-08 At & T Corp. System and method for inter-domain mobility management
US6604142B1 (en) * 2000-05-05 2003-08-05 Telefonaktiebolaget Lm Ericsson (Publ) Method of filtering responses to gatekeeper discovery multicast request message
US7082119B1 (en) * 2000-06-28 2006-07-25 Cisco Technology, Inc. Full PBX telephony feature preservation across a voice over packet network
US7111163B1 (en) 2000-07-10 2006-09-19 Alterwan, Inc. Wide area network using internet with quality of service
JP2002124951A (en) * 2000-10-12 2002-04-26 Canon Inc Communication terminal device, service providing system, service utilization method and memory medium
US6965575B2 (en) * 2000-12-29 2005-11-15 Tropos Networks Selection of routing paths based upon path quality of a wireless mesh network
US7836147B2 (en) * 2001-02-27 2010-11-16 Verizon Data Services Llc Method and apparatus for address book contact sharing
US20020199203A1 (en) * 2001-05-18 2002-12-26 John Duffy Switched digital video gateway
US7075929B2 (en) * 2001-06-06 2006-07-11 Motorola, Inc. Dense mode IP multicast call scoping in a wireless communication system
DE50313304D1 (en) * 2002-09-10 2011-01-20 Siemens Ag Method for controlling transmission resources of a packet-oriented communication network in the case of topology changes
US7953088B2 (en) * 2003-06-10 2011-05-31 Cisco Technology, Inc. Method and apparatus for packet classification and rewriting
NO319205B1 (en) * 2003-07-07 2005-06-27 Tandberg Telecom As Automatic call routing
US8949304B2 (en) * 2003-08-20 2015-02-03 Apple Inc. Method and apparatus for accelerating the expiration of resource records in a local cache
US20050091399A1 (en) * 2003-09-30 2005-04-28 Candan Kasim S. Resource-aware adaptive multicasting in a shared proxy overlay network
EP1560137A1 (en) * 2004-01-30 2005-08-03 Sap Ag Technique for reliable message confirmation
CN1266898C (en) * 2004-03-29 2006-07-26 华为技术有限公司 Method for realizing multimedia broadcast/multi cast service business activation
US7701884B2 (en) * 2004-04-19 2010-04-20 Insors Integrated Communications Network communications bandwidth control
US7746774B2 (en) * 2004-06-30 2010-06-29 Research In Motion Limited Methods and apparatus for controlling wireless network resources for data sessions based on IP address usage
WO2006003874A1 (en) * 2004-06-30 2006-01-12 Matsushita Electric Industrial Co., Ltd. Communication device, communication setting method, communication setting program, and recording medium containing the communication setting program
US8374121B2 (en) * 2004-08-13 2013-02-12 Research In Motion Limited Methods and apparatus for efficiently establishing and maintaining a data connection between a mobile station and a wireless network
US7738859B2 (en) * 2005-03-10 2010-06-15 Interdigital Technology Corporation Multi-node communication system and method of requesting, reporting and collecting destination-node-based measurements and route-based measurements
TW201001986A (en) * 2005-03-10 2010-01-01 Interdigital Tech Corp Multi-node communication system and method of requesting, reporting and collecting destination node-based measurements and route-based measurements
KR101215820B1 (en) 2006-11-27 2012-12-26 엘지전자 주식회사 Mobile communication terminal and method of driving a transaction timer
CN101896009B (en) * 2009-05-18 2013-03-27 中兴通讯股份有限公司 System and method for self-discovering remote radio unit and self-establishing topological structure
CN106612211B (en) * 2015-10-23 2020-02-21 华为技术有限公司 Path detection method, controller and network equipment in VxLAN
US10742512B2 (en) 2017-07-24 2020-08-11 Singlewire Software, LLC System and method for multicast mapping
US11558357B2 (en) 2019-11-22 2023-01-17 Baidu Usa Llc Method for key sharing between accelerators with switch
US11552790B2 (en) 2019-11-22 2023-01-10 Baidu Usa Llc Method for key sharing between accelerators
US11343083B2 (en) 2019-11-22 2022-05-24 Baidu Usa Llc Method for key sharing between accelerators in virtual channel
US11405336B2 (en) 2019-11-22 2022-08-02 Baidu Usa Llc Method for key sharing between accelerators in virtual channel with switch
US11457354B2 (en) * 2019-12-10 2022-09-27 Baidu Usa Llc System and method to securely broadcast a message to accelerators
US11516010B2 (en) 2019-12-10 2022-11-29 Baidu Usa Llc System and method to securely broadcast a message to accelerators using virtual channels
US11411934B2 (en) * 2019-12-10 2022-08-09 Baidu Usa Llc System and method to securely broadcast a message to accelerators with switch
US11728996B2 (en) * 2019-12-10 2023-08-15 Baidu Usa Llc System and method to securely broadcast a message to accelerators using virtual channels with switch

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0579567A2 (en) * 1992-06-18 1994-01-19 International Business Machines Corporation Methods and apparatus for routing packets in packet transmission networks
WO1996013108A2 (en) * 1994-10-25 1996-05-02 Cabletron Systems, Inc. Method and apparatus for determining ip communications path

Family Cites Families (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4644468A (en) * 1984-07-20 1987-02-17 International Business Machines Corp. Name usage support through distributed processing networks linked by bridges and/or gateways
US4924493A (en) 1988-09-19 1990-05-08 Ibm Corporation Method for monitoring call setup communications
EP0699008A1 (en) * 1994-08-23 1996-02-28 BELL TELEPHONE MANUFACTURING COMPANY Naamloze Vennootschap Method for rerouting a data stream
US5926101A (en) * 1995-11-16 1999-07-20 Philips Electronics North America Corporation Method and apparatus for routing messages in a network of nodes with minimal resources
US5909431A (en) * 1996-06-28 1999-06-01 At&T Corp. Packet mode multimedia conferencing services over an ISDN wide area network
GB9625019D0 (en) * 1996-11-29 1997-01-15 Northern Telecom Ltd Network restoration routing optimisation
GB9715857D0 (en) * 1997-07-29 1997-10-01 Philips Electronics Nv Wireless networked message routing
US6052784A (en) * 1997-10-14 2000-04-18 Intel Corporation Network discovery system and method
US6119170A (en) * 1997-12-29 2000-09-12 Bull Hn Information Systems Inc. Method and apparatus for TCP/IP multihoming on a host system configured with multiple independent transport provider systems
US6104695A (en) * 1998-03-31 2000-08-15 Sun Microsystems, Inc. Repair TTL computation and correction mechanism to perform localized repairs in a multicast data distribution setup/framework
US6130881A (en) * 1998-04-20 2000-10-10 Sarnoff Corporation Traffic routing in small wireless data networks

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0579567A2 (en) * 1992-06-18 1994-01-19 International Business Machines Corporation Methods and apparatus for routing packets in packet transmission networks
WO1996013108A2 (en) * 1994-10-25 1996-05-02 Cabletron Systems, Inc. Method and apparatus for determining ip communications path

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
ANONYMOUS: "Dynamic Adjustment of Timer to Terminate Multicast Queries." IBM TECHNICAL DISCLOSURE BULLETIN, vol. 35, no. 1B, 1 June 1992 (1992-06-01), pages 400-401, XP002134600 New York, US *
S. SENGODAN: "A gatekeeper discovery mechanism for H.323 systems" SPIE CONFERENCE ON MULTIMEDIA SYSTEMS AND APPLICATIONS,November 1998 (1998-11), pages 319-326, XP000901061 Boston,US *

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP1185035A1 (en) * 2000-08-25 2002-03-06 Media-Streams.com AG System for discovering H.323 gatekeepers in data networks
WO2003047187A1 (en) * 2001-11-30 2003-06-05 Marconi Communications Spa Telecommunications network control method and network with said system
EP1649704A1 (en) * 2003-07-18 2006-04-26 Motorola, Inc. Method and apparatus in a wireless communication system for expediting a request for uplink resources
EP1649704A4 (en) * 2003-07-18 2009-01-28 Motorola Inc Method and apparatus in a wireless communication system for expediting a request for uplink resources
WO2005107306A1 (en) * 2004-04-30 2005-11-10 Siemens Aktiengesellschaft Multi-hop communication setup subject to boundary values
EP1845748A1 (en) * 2004-04-30 2007-10-17 Siemens Aktiengesellschaft, A German Corporation Generation of multi-hop communication links depending on limiting values

Also Published As

Publication number Publication date
US20020054596A1 (en) 2002-05-09
EP1119949B1 (en) 2003-09-17
JP2002527941A (en) 2002-08-27
WO2000021245A3 (en) 2000-07-20
AU6414099A (en) 2000-04-26
EP1119949A2 (en) 2001-08-01
US6426945B1 (en) 2002-07-30
DE69911445T2 (en) 2004-07-22
DE69911445D1 (en) 2003-10-23
US7342888B2 (en) 2008-03-11
JP3813442B2 (en) 2006-08-23

Similar Documents

Publication Publication Date Title
US6426945B1 (en) Method and apparatus for providing resource discovery using multicast scope
Schulzrinne Personal mobility for multimedia services in the Internet
US6490275B1 (en) Method and apparatus for improving call setup efficiency in multimedia communications systems
US5905872A (en) Method of transferring connection management information in world wideweb requests and responses
US6754224B1 (en) Method and apparatus for multicast call signaling in packet network
US7783704B2 (en) System and apparatus for geographically distributed VoIP conference service with enhanced QoS
US6011782A (en) Method for managing multicast addresses for transmitting and receiving multimedia conferencing information on an internet protocol (IP) network
EP1453260A1 (en) A method for providing services with guaranteed quality of service in IP access network
US20030074451A1 (en) Integration of video telephony with chat and instant messaging environments
US20040109414A1 (en) Method of providing differentiated service based quality of service to voice over internet protocol packets on router
US20050267969A1 (en) Providing information on a resource in a communication system
CN105721570A (en) Point to point data transmission method and device
US6604142B1 (en) Method of filtering responses to gatekeeper discovery multicast request message
JP3990297B2 (en) Response processing control method
US7142510B1 (en) Communications network
JP4573357B2 (en) Automatic call routing
CN107241565B (en) Multimedia conference system and communication method thereof
US20020191769A1 (en) Connection-selection method and telecommunication endpoint device
Braun et al. Multicast for small conferences
Cisco Internetwork Design Guide
Cisco Cisco Hoot and Holler over IP
Cisco Internetwork Design Guide
Mauthe et al. Group support in multimedia communications systems
KR100575637B1 (en) Extension phone conversation method for different subnet
O'Neill Internet futures

Legal Events

Date Code Title Description
ENP Entry into the national phase

Ref country code: AU

Ref document number: 1999 64140

Kind code of ref document: A

Format of ref document f/p: F

AK Designated states

Kind code of ref document: A2

Designated state(s): AE AL AM AT AU AZ BA BB BG BR BY CA CH CN CU CZ DE DK EE ES FI GB GD GE GH GM HR HU ID IL IN IS JP KE KG KP KR KZ LC LK LR LS LT LU LV MD MG MK MN MW MX NO NZ PL PT RO RU SD SE SG SI SK SL TJ TM TR TT UA UG US UZ VN YU ZA ZW

AL Designated countries for regional patents

Kind code of ref document: A2

Designated state(s): GH GM KE LS MW SD SL SZ TZ UG ZW AM AZ BY KG KZ MD RU TJ TM AT BE CH CY DE DK ES FI FR GB GR IE IT LU MC NL PT SE BF BJ CF CG CI CM GA GN GW ML MR NE SN TD TG

121 Ep: the epo has been informed by wipo that ep was designated in this application
DFPE Request for preliminary examination filed prior to expiration of 19th month from priority date (pct application filed before 20040101)
AK Designated states

Kind code of ref document: A3

Designated state(s): AE AL AM AT AU AZ BA BB BG BR BY CA CH CN CU CZ DE DK EE ES FI GB GD GE GH GM HR HU ID IL IN IS JP KE KG KP KR KZ LC LK LR LS LT LU LV MD MG MK MN MW MX NO NZ PL PT RO RU SD SE SG SI SK SL TJ TM TR TT UA UG US UZ VN YU ZA ZW

AL Designated countries for regional patents

Kind code of ref document: A3

Designated state(s): GH GM KE LS MW SD SL SZ TZ UG ZW AM AZ BY KG KZ MD RU TJ TM AT BE CH CY DE DK ES FI FR GB GR IE IT LU MC NL PT SE BF BJ CF CG CI CM GA GN GW ML MR NE SN TD TG

ENP Entry into the national phase

Ref country code: JP

Ref document number: 2000 575260

Kind code of ref document: A

Format of ref document f/p: F

WWE Wipo information: entry into national phase

Ref document number: 1999951774

Country of ref document: EP

WWP Wipo information: published in national office

Ref document number: 1999951774

Country of ref document: EP

REG Reference to national code

Ref country code: DE

Ref legal event code: 8642

WWG Wipo information: grant in national office

Ref document number: 1999951774

Country of ref document: EP