Source: http://www.google.com/patents/US20030009565?ie=ISO-8859-1&dq=5,675,808
Timestamp: 2014-09-20 08:45:59
Document Index: 557159091

Matched Legal Cases: ['art 202', 'arts 401', 'art 401', 'arts 404', 'art 402', 'art 404', 'art 404', 'art 407', 'art 404', 'art 407', 'arts 512']

Patent US20030009565 - Method of establishing peer-to-peer application sessions - Google PatentsSearch Images Maps Play YouTube News Gmail Drive More »Sign in<nobr>Advanced Patent Search</nobr>PatentsA session establishment method is disclosed. A first data processing unit starts an application to apply for a session to a second data processing unit by using an SIP (Session Initiation Protocol). The second data processing unit permits the session to the first data processing unit by using the SIP....http://www.google.com/patents/US20030009565?utm_source=gb-gplus-sharePatent US20030009565 - Method of establishing peer-to-peer application sessionsAdvanced Patent SearchPublication numberUS20030009565 A1Publication typeApplicationApplication numberUS 10/190,537Publication dateJan 9, 2003Filing dateJul 9, 2002Priority dateJul 9, 2001Publication number10190537, 190537, US 2003/0009565 A1, US 2003/009565 A1, US 20030009565 A1, US 20030009565A1, US 2003009565 A1, US 2003009565A1, US-A1-20030009565, US-A1-2003009565, US2003/0009565A1, US2003/009565A1, US20030009565 A1, US20030009565A1, US2003009565 A1, US2003009565A1InventorsShinya AraoOriginal AssigneeNec CorporationExport CitationBiBTeX, EndNote, RefManReferenced by (36), Classifications (15), Legal Events (1) External Links: USPTO, USPTO Assignment, EspacenetMethod of establishing peer-to-peer application sessionsUS 20030009565 A1Abstract A session establishment method is disclosed. A first data processing unit starts an application to apply for a session to a second data processing unit by using an SIP (Session Initiation Protocol). The second data processing unit permits the session to the first data processing unit by using the SIP. The second data processing unit starts application, and a step, in which the session is established between the applications started by the first and second data processing units. In the session application or permission by using the SIP, application parameters are provided in the payload. Images(6) Claims(8)
PREFERRED EMBODIMENTS OF THE INVENTION [0020] Preferred embodiments of the present invention will now be described with reference to the drawings. [0021]FIG. 1 is a view showing the basic constitution of a system using a Java RMI session establishment method based on the SIP according to the present invention. In the SIP, terminal 105 of multimedia communication is called UAC (User Agent Client), while opposite side terminal 106 is called UAS (User Agent Server). The UAC 105 effects establishment of a multimedia session with respect to the UAS 106 by using the SIP. Audio or video communication can be established among a plurality of multimedia terminals by describing media attribute of RTP (Real-time Transport Protocol, IETF RFC1889) in payload SDF (Session Description Protocol, IETF RFC2327) of an SIP message. [0022] This embodiment features that parameters related to Java RMI applications are described as SIP payload with XML, that instance generation and start of a designated Java object are performed on a plurality of multimedia terminals and that peer-to-peer communication using the RMI is established among these terminals. Here, in the case when the own terminal utilizes the Java object on a different terminal by using the RMI, the Java object on the different terminal is called a remote object. Also, Java programs referred to according to the present invention all utilize the RMI, and are hence hereinafter called RMI applications. [0023] Referring to FIG. 1, an SIP server 102 is used for SIP message routing. For instance, an SIP message sent out from the UAC 105 to the UAS 106, is sent via the SIP server 102. This is not an essential prerequisite of the present invention. Likewise, CODECs 110 and 114 are used only for coding and decoding of audio and video as RTP media, and hence are not an essential prerequisite of the present invention. JVMs (Java Virtual Machines) 109 an 113 are always provided on operating systems and platforms, in which Java can be executed. [0024] Referring to FIG. 1, an SIP call control function 107 in the UAC 105, establishes a session between UAC and UAS by exchanging SIP signaling messages with an SIP call control function 111 in the UAS 106. At this time, the SIP is transferred as a payload in the SIP message for establishing an RTP media session, and related parameters described with the XML are transferred for establishing a session with remote objects. Specifically, when the UAC 105 intends to establish a session with the SIP, it describes a Java object (i.e., RMI application) title desired to be started in the UAS 106 and related parameters in the form of the XML, and sends out the described contents as SIP message payload to the UAS 106. In a repository 101, Java objects are preserved in the form of JARs (Java Archive files), and the UAC 105 and UAS 106 can down-load a specific JAR file that is designated with HTTP (IETF RFC2616) URL by using the HTTP. [0025] The UAC 105 registers an RMI application 108, which has been started in the own terminal prior to the SIP session establishment, with a title provided in an RMI registry 103. After the registration, the UAS 106 can obtain the RMI reference of the Java object started in the UAC 106 by designating an RMI URL corresponding to that Java object. Likewise, an SIP call control function 111 in the UAS 106 registers a Java object, which has been started in the own terminal during the SIP session establishment, with a title provided in the RMI registry 104. After the registration, the UAC 105 can obtain the RMI reference of the RMI application 112 started in the UAS 106 by designating an RMI URL corresponding to the Java object. [0026]FIG. 2 is a view illustrating the operation of the embodiment at the time of the establishment of a session among RMI dispersed objects. The caller side multimedia terminal (SIP UAC) starts a given RMI application 201. The RMI application 201 causes SIP session start 202 by using a certain API, which is standardized as JAIN by SUN Micros systems. At this time, the RMI application to be started in the UAS side multimedia terminal and the RMI URI registered in the RMI registry 103 are notified to the SIP call control function 107. [0027] The UAC sends out an INVITE message 203 to the UAS. The UAS immediately returns 180 ringing 204 to the UAC, and performs instance generation of the Java object designated in the INVITE payload with the XML (208). The UAC preliminarily confirms that the instance may be generated to the UAS side user and receives start permission therefrom (206 and 207). In the confirmation, a from-header-field value in INVITE message is displayed as the caller's name, and also the subject title shown in a subject-header-field in the INVITE message are displayed. FIG. 4 shows an example of header-field INVITE messages. A window 301 as shown in FIG. 3 is the confirmation display. The UAS side user permits the start of the designated Java object and continues the session by depressing a �Yes� button 302 in the window. When the user does not permit the start, �No� button is depressed. [0028]FIG. 4 shows an example of actual SIP message. In this INVITE message, labeled 404 is an SDP payload, and labeled 407 is an XML payload as a feature of the present invention. In a line 405, �application/x-java-rmiparam� as MIME (IETF RFC2045) �type title is described. MIME type titles starting with �x-� represent expansion specifications and can be used without formal registration in the IANA. Thus, regarding the MIME type title, any title which can be understood in that multimedia terminal can be provided. Also, the syntax and semantix which are necessary for parameter description with the XML can be defined as desired with XML DTD (Document Type Definition). [0029] Referring to FIG. 4, in the XML description 407, two parts <jarurl http://xyz_school.co.jp/lessons/unit25.jar/jarurl> and <miurlrmi>://greg. .xyz_school.co.jp/unit25 </rmiur1> correspond to parameters representing the HTTP URL and RMI URL in the JAR files. XML tags <jarur1>, </jarur1>,<rmiur1>and </rmiur1>can be defined as desired with the DTD. Parts 401, 402 and 406 represent numeral figures which are variable in dependence on the payload content. The part 401 represents the total byte length of two MIME objects represented by parts 404 and 405, and actually numeral figures are entered in these parts. The part 402 represents the byte length of an SDP part in the part 404, and the part 404 represents the byte length of an XML part in the part 407. A gain numeral figures are entered in these parts. In this example, the MIME object of SDP in the part 404 and the MIME object of XML in the part 407 are sectioned one from the other by a boundary named �boundary�. [0030] According to the parameters designated in the XML description 407, the UAS down-loads a file entitled �unit25, jar� in �http://xyz_school.co.jP/lessons/unit25, jar� as HTTP URL from the registry 101, and starts this file. Before the UAS starts Java program, it should preliminarily have knowledge of the title of Java class, in which a methods title of �main( . . . )� is present. In this connection, the Java class containing the method �main( . . . ) �is described in a manifest in JAR file, and the UAS refers to this. [0031] Referring to FIG. 2, after the UAS has started the designated RMI application, it obtains a reference of the RMI application in the UAC by using �rmiur1://greg.xyz_school.co.jp/unit25� as RMI URL designated by parameter <rmiur1>rmi://greg.xyz_school.co.jp/unit25 </rmiur1> in the XML description 407 in the INVITE message as shown in FIG. 4 (209). Here, since the peer-to-peer communication application is a preamble, it is also conceivable that the UAC conversely utilize the RMI application started in the UAS by using the RMI. [0032] In other words, in FIG. 1, the RMI application 108 can obtain the reference of the RMI application 112 after the RMI application 112 has registered its own RMI URL in the RMI registry 104 and notified this to the RMI application 108. This process depends on the program algorithm of the RMI application. Also, regarding this it is possible to use �SIP message 183 session progress� in RFC 2543-bis as a revision of RFC 2541, although this revision is now in the stage of internet draft. The RMI URL may be transferred as payload of �183, Session Progress� from the UAS to the UAC. [0033] Referring again to FIG. 2, when the establishment of an RMI application session between UAC and UAS has been succeeded (209), the Java application (i.e., RMI application) notifies to the SIP call control function 111 that it is ready to start session (210). The SIP call control function 11 returns 200 OK to the UAC (211), and the UAC returns ACR (212). Thus, a multimedia session including RMI is started with the SIP. At this time, the window 304 shown in FIG. 3 is shown to the UAS side user, thus notifying the establishment of the multimedia session including RMI. [0034] As for the session establishment, not only a session among desired objects but also an audio or vide RTP media session can be established. This is so because the SIP conforms to MIME multipart, thus permitting a plurality of MIME types to be held in payload and permitting transfer of a plurality of MIME objects. FIG. 4 shows an example of pay load described in the MIME multipart. In this example, in the SDP description 403, RTP media based on ITU-T G. 711 μ1aw voice coding system and RTP media based on ITU-T H.261 are designated. Thus, in this example peer-to-peer communication among RMI applications and also audio/video RTP media communication are established. [0035] A foreign language remote lesson will now be described as an actual application of the above embodiment. This case concerns with establishment of a remote English conversation education session among a teacher and two students. [0036] Foreign language teacher Greg starts an RMI application (i.e., Java Program) for a certain lesson. In this example, a program for �Unit 25 Lesson� is started. Necessary Java class is down-loaded as JAR file from a repository 501 (302). This language study program 504 establishes a session with students A (Taro) and B (Hanako) by using the SIP. [0037] Referring to FIG. 5, two multimedia terminals 515 and 516 supporting the SIP and the Java are shown. The terminals 515 and 516 correspond to the UAC and the UAS, respectively. These multimedia terminals have respective video cameras and microphones mounted in them for sending out faces and voices to each other. Also, these terminals each internally include an SIP call control function, a JVM (Java virtual machine) and a CODEC used for coding and decoding of audio and video. The material used in the foreign language school is constituted by units, and the repository 501 holds these units in the form of JAR files. [0038] The Unit 25� of the English study program is in duty service on the JVM as units 504 and 505 in the UAC and the UAS, respectively. These units communicate with each other with the RMI (506). The CODECs code and decode audio and video RTP media (507 and 508). Designated at 509 is the GUI of the Java program of this English conversation Lesson �Unit 25�. Designated at 510 is a part of the English text, which is tentatively concealed by teacher Greg. Designated at 511 is a part for conducting a quiz type lesson. In parts 512 to 514, the faces of the teacher Greg and students A and B, respectively, are displayed. [0039] The embodiment is realized as a sequence of operations as shown in FIGS. 1 and 2. The windows 301 and 304 shown in FIG. 3 are displayed on the display of the multimedia terminal 516, that is, shown to the user. The INVITE as shown in FIG. 4 is sent out from the multimedia terminal 515 as shown in FIG. 5 to the other multimedia terminal 516. The RMI application is held as JAR file in the repository 501. The multimedia terminals 515 and 516 down-load the program of �Unit 25� as JAR file from �http://xyz_school.co.jp/lessons/unit25, jar� as HTTP URL as in the XML description 407 in FIG. 4. As for the multimedia terminal 516, its RMI application 505 obtains the reference of the RMI application 504 on the multimedia terminal 515 from an address �rmi://xyz_school.co.jp/unit25� as RMI URL as in the XML description 407 in FIG. 4. [0040] The GUI 509 of Java program of �Unit 25�, which is actually used by teacher Greg and students A (Tarro) and B (Hanako), is shown on upper right part of FIG. 5. The GUI is displayed on the multimedia terminals of teacher Greg and students A and B, respectively. The faces of teacher Greg and students A (Taro) and B (Hanako), respectively, are displayed on respective windows 512 to 514. As these faces, images picked up by television cameras mounted on the multimedia terminals are sent out as RTP media. Voices of teacher Greg and students A and B, which are picked up by microphones in the multimedia terminals, are sent out as RTP media. Designated by 510 is a certain part of the English text, which is concealed by teacher Greg. Designated by 511 is an example of a three-selective quiz in the state that the term of �Billy Joel� has been clicked by either student. [0041] The sessions with respect to the students A and B can be established at a time. This is so because these sessions are dealt with as separate calls and thus permit discrimination of the RMI objects of the students A and B as separate RMI URLs. The RMI object of teacher Greg, however, should have recognized that it is in communication with the other two RMI objects. For the common use of the audio and/or video RMI media for the three objects, it may be thought to provide function of an IP multicast or the multimedia terminal 515 of teacher Greg. [0042] The Java application to the peer-to-peer communication has merits that the same state of the GUI, which is produced with a certain part of the English text concealed by teacher Greg as shown at 510 in FIG. 5, is common to the teacher and students A and B and that it is possible to realize an intractive teaching material of quiz type as shown at 511. Furthermore, a remote education status such that an English conversation lesson is held by a teacher and several students around a table and by using the same material, can be realized as on-line status. While this example concerns with the foreign language remote lesson, the present invention also covers various other applications such as network games. [0043] In the multimedia terminal supporting the SIP, the caller can start a given RMI application on its own terminal and a plurality of called terminals to realize the peer-to-peer communication among these terminals. In this way, it is possible to develop various peer-to-peer communication services such as remote education, local community meetings and network games. [0044] The multimedia terminal can utilize the opposite side remote object in the same manner as utilizing the Java API of a local object by obtaining the reference of the remote object started in the opposite side multimedia terminal. Also, at the time of establishing a session with the SIP, the UAC can designate the Java object to be started to the UAS, and can also send out parameters necessary for RMI communication establishment between the Java objects in the UAC and UAS to the UAS. [0045] Furthermore, establishment of audio or video communication among a plurality of multimedia terminals is possible by describing the media attribute of the STP in the payload SDP of SIP message. [0046] Changes in construction will occur to those skilled in the art and various apparently different modifications and embodiments may be made without departing from the scope of the present invention. The matter set forth in the foregoing description and accompanying drawings is offered by way of illustration only. It is therefore intended that the foregoing description be regarded as illustrative rather than limiting. Referenced byCiting PatentFiling datePublication dateApplicantTitleUS7042871 *Jul 15, 2004May 9, 2006Mci, LlcMethod and system for suppressing early media in a communications networkUS7325251 *Dec 16, 2003Jan 29, 2008Symantec CorporationMethod and system to prevent peer-to-peer (P2P) wormsUS7570636Aug 30, 2005Aug 4, 2009Damaka, Inc.System and method for traversing a NAT device for peer-to-peer hybrid communicationsUS7623476May 15, 2006Nov 24, 2009Damaka, Inc.System and method for conferencing in a peer-to-peer hybrid communications networkUS7623516Dec 29, 2006Nov 24, 2009Damaka, Inc.System and method for deterministic routing in a peer-to-peer hybrid communications networkUS7656870Mar 15, 2005Feb 2, 2010Damaka, Inc.System and method for peer-to-peer hybrid communicationsUS7660851 *Jul 6, 2005Feb 9, 2010Microsoft CorporationMeetings near meUS7756106Jun 29, 2004Jul 13, 2010Canon Kabushiki KaishaCommunication terminal, control method of communication terminal, and control program of communication terminalUS7778187Dec 29, 2006Aug 17, 2010Damaka, Inc.System and method for dynamic stability in a peer-to-peer hybrid communications networkUS7924771 *Apr 12, 2005Apr 12, 2011Qualcomm, IncorporatedMultimedia communication using co-located care of address for bearer trafficUS7933260Oct 17, 2005Apr 26, 2011Damaka, Inc.System and method for routing and communicating in a heterogeneous network environmentUS8000325Aug 10, 2009Aug 16, 2011Damaka, Inc.System and method for peer-to-peer hybrid communicationsUS8009586Jan 27, 2006Aug 30, 2011Damaka, Inc.System and method for data transfer in a peer-to peer hybrid communication networkUS8050272May 15, 2006Nov 1, 2011Damaka, Inc.System and method for concurrent sessions in a peer-to-peer hybrid communications networkUS8139578Jun 30, 2009Mar 20, 2012Damaka, Inc.System and method for traversing a NAT device for peer-to-peer hybrid communicationsUS8145702 *May 25, 2007Mar 27, 2012Sony Computer Entertainment America LlcMethod and apparatus for team based strategy planning in computer simulationsUS8218444Aug 25, 2011Jul 10, 2012Damaka, Inc.System and method for data transfer in a peer-to-peer hybrid communication networkUS8285852May 25, 2005Oct 9, 2012Telefonaktiebolaget Lm Ericsson (Publ)Method and apparatus for identifying an IMS serviceUS8352563Apr 29, 2010Jan 8, 2013Damaka, Inc.System and method for peer-to-peer media routing using a third party instant messaging system for signalingUS8380859Nov 26, 2008Feb 19, 2013Damaka, Inc.System and method for endpoint handoff in a hybrid peer-to-peer networking environmentUS8406229Mar 20, 2012Mar 26, 2013Damaka, Inc.System and method for traversing a NAT device for peer-to-peer hybrid communicationsUS8407314Apr 4, 2011Mar 26, 2013Damaka, Inc.System and method for sharing unsupported document types between communication devicesUS8432917Sep 15, 2011Apr 30, 2013Damaka, Inc.System and method for concurrent sessions in a peer-to-peer hybrid communications networkUS8437307Sep 3, 2008May 7, 2013Damaka, Inc.Device and method for maintaining a communication session during a network transitionUS8446900Jun 18, 2010May 21, 2013Damaka, Inc.System and method for transferring a call between endpoints in a hybrid peer-to-peer networkUS8467387Mar 20, 2012Jun 18, 2013Damaka, Inc.System and method for peer-to-peer hybrid communicationsUS8468010Sep 24, 2010Jun 18, 2013Damaka, Inc.System and method for language translation in a hybrid peer-to-peer environmentUS8478890Jul 15, 2011Jul 2, 2013Damaka, Inc.System and method for reliable virtual bi-directional data stream communications with single socket point-to-multipoint capabilityUS8611540Jun 23, 2010Dec 17, 2013Damaka, Inc.System and method for secure messaging in a hybrid peer-to-peer networkUS8689307Mar 19, 2010Apr 1, 2014Damaka, Inc.System and method for providing a virtual peer-to-peer environmentUS8694587May 17, 2011Apr 8, 2014Damaka, Inc.System and method for transferring a call bridge between communication devicesUS8725895Feb 15, 2010May 13, 2014Damaka, Inc.NAT traversal by concurrently probing multiple candidatesUS8743781Oct 11, 2010Jun 3, 2014Damaka, Inc.System and method for a reverse invitation in a hybrid peer-to-peer environmentUS8792420Mar 1, 2011Jul 29, 2014Qualcomm IncorporatedMultimedia communication using co-located care of address for bearer trafficUS20080294782 *May 25, 2007Nov 27, 2008Sony Computer Entertainment America Inc.Clan based strategy sharing toolWO2006008589A1Mar 29, 2005Jan 26, 2006Damaka IncSystem and method for peer-to-peer hybrid communications* Cited by examinerClassifications U.S. Classification709/227International ClassificationG06F9/54, G06F15/00, H04L29/06, G06F13/00, H04L29/08Cooperative ClassificationH04L65/608, H04L29/06027, H04L69/329, H04L29/06, H04L65/1006European ClassificationH04L29/06, H04L29/06C2, H04L29/06M2H2, H04L29/06M6PLegal EventsDateCodeEventDescriptionJul 9, 2002ASAssignmentOwner name: NEC CORPORATION, JAPANFree format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNOR:ARAO, SHINYA;REEL/FRAME:013093/0985Effective date: 20020703RotateOriginal ImageGoogle Home - Sitemap - USPTO Bulk Downloads - Privacy Policy - Terms of Service - About Google Patents - Send FeedbackData provided by IFI CLAIMS Patent Services©2012 Google