throbber
WO 2011/032256
`
`PCT/CA2009/001317
`
`CA 02812174 2013-03-15
`
`-1-
`
`UNINTERRUPTED TRANSMISSION OF INTERNET PROTOCOL
`
`TRANSMISSIONS DURING ENDPOINT CHANGES
`
`BACKGROUND OF THE INVENTION
`
`1.
`
`Field of Invention
`
`This invention relates to internet protocol
`
`(IP)
`
`transmissions and, more
`
`particularly, to uninterrupted transmission of IP transmissions containing real
`
`time transport protocol (RTP) data during endpoint changes.
`
`10
`
`2.
`
`Description of Related Art
`
`Internet Protocol (IP) transmission systems are known to use media relays to
`
`relay IP transmissions from one endpoint to another.
`
`In a telephone system,
`
`15
`
`the media relay relays IP transmissions betweena caller and a callee. An IP
`
`session is established by a call controller, which interacts with the media
`
`relay, the caller and the callee to convey to each of these entities the IP
`
`addresses and ports to which they should send IP transmissions and from
`
`which they should expect IP transmissions. The media relay is configured to
`
`20
`
`accept packets conveyed byIP transmissions from specified caller and callee
`
`IP addresses and ports.
`
`In some systems, such as mobile telephone
`
`systems, a mobile telephone may be in communication with a first base
`
`station while in a certain geographical area and there may be a handoff of the
`
`call to another base station when the mobile telephone is movedto a different
`
`25
`
`geographical location. Communications between the base stations and the
`
`mobile
`
`telephones are conducted on a Global System from Mobile
`
`Communication (GSM) network or other cellular network, for example, and the
`
`base stations convert messages to and from the GSM network and the IP
`
`network and thus,
`
`the base stations establish the caller and callee IP
`
`30
`
`addresses and ports. Each base station will have a unique IP address and
`
`UDP port number that it associates or assigns to the mobile telephone with
`
`which it has established communication in the conventional manner over the
`
`cellular network. Thus, a conventional media relay will reject IP streams from
`
`PETITIONER APPLE INC.
`
`EX. 1003-1
`
`PETITIONER APPLE INC. EX. 1003-1
`
`

`

`WO 2011/032256
`
`PCT/CA2009/001317
`
`CA 02812174 2013-03-15
`
`-2-
`
`the new basestation after handoff of the call because such streams are seen
`
`as being transmitted by an unauthorized source. This generally prevents
`
`voice over IP telephone calls from being made through systems that employ
`
`media relays without further call handling.
`
`The Session Initiation Protocol (SIP) RFC 3261 provided by the Internet
`
`Engineering Task Force (IETF) specifies a mechanism for an endpoint to
`
`notify another endpointif its IP address changes. This mechanism employs a
`
`signaling message that conveys an identification of new media properties for
`
`10
`
`the endpoint whose IP address has changed. The use of SIP messagesfor
`
`this purpose, however, adds extra overhead and delays to the call as
`
`signaling messages must be routed through the call controller and the call
`
`controller must communicate with the media relay and endpoints to re-
`
`configure the media relay to accept IP transmissions from the endpoint having
`
`15
`
`the new IP address and to cause IP transmission to be relayed thereto each
`
`time a handoff occurs.
`
`SUMMARYOF THE INVENTION
`
`In accordance with one aspect of the invention, there is provided a method for
`
`20
`
`facilitating uninterrupted transmission of internet protocol (IP) transmissions
`
`containing real time transport protocol (RTP) data during endpoint changes.
`
`The method involves maintaining records, each record associating session
`
`information, caller information and callee information for IP communication
`
`sessions.
`
`The session information includes caller and callee RTP port
`
`25
`
`identifiers identifying caller and callee RTP ports respectively of a media relay.
`
`The caller information includes a caller IP address identifier and a caller port
`
`identifier to which IP transmissions received at the callee RTP port are
`
`transmitted from the media relay, and a caller synchronization source (SSRC)
`
`identifier. The callee information includes a callee IP address identifier and a
`
`30
`
`callee port identifier to which IP transmissions received at the caller RTP port
`
`are transmitted from the media relay, and a callee SSRCidentifier. When an
`
`IP transmission is received at the caller RTP port or the callee RTP port,
`
`the
`
`record having a caller RTP port
`
`identifier or a callee RTP port
`
`identifier
`
`PETITIONER APPLE INC.
`
`EX. 1003-2
`
`PETITIONER APPLE INC. EX. 1003-2
`
`

`

`WO 2011/032256
`
`PCT/CA2009/001317
`
`CA 02812174 2013-03-15
`
`-3-
`
`matching a destination port identifier in the IP transmission is located. When
`
`the record is located and when the destination port
`
`identifier in the IP
`
`transmission matchesthe caller RTP port identifier of the record, a source IP
`
`addressidentifier and source port identifier from the IP transmission are set
`
`as the caller IP address identifier and caller port identifier respectively of the
`
`record when the caller IP address identifier and caller port identifier do not
`
`match the source IP address identifier and source port identifier respectively
`
`and a received SSRC identifier in the IP transmission matches the caller
`
`SSRCidentifier. When the destination port identifier in the IP transmission
`
`10
`
`matches the callee RTP port identifier of the record, the source IP address
`
`identifier and source port identifier from the IP transmission are set as the
`
`callee IP address identifier and callee port identifier respectively of the record
`
`when the callee IP addressidentifier and callee port identifier do not match
`
`the source IP address identifier and source port identifier respectively and the
`
`15
`
`received SSRC identifier in the IP transmission matches the callee SSRC
`
`identifier.
`
`The method may involve determining whether the IP transmission is a pre-
`
`determined transmission and, if so, determining whether the IP transmission
`
`20
`
`is from the caller or callee. When the pre-determined IP transmission is
`
`received from the caller, the method involves storing the received SSRC
`
`identifier as the caller SSRC identifier in the record and when the pre-
`
`determined IP transmission is received from the callee, the method involves
`
`storing the received SSRC identifier as the callee SSRC identifier in the
`
`25
`
`record.
`
`The method mayinvolve determining whether the IP transmission is a pre-
`
`determined transmission and, if so, where the caller and callee are configured
`
`to use the same SSRCidentifier, storing the received SSRC identifier as the
`
`30
`
`caller SSRC identifier in the record and as the callee SSRCidentifier in the
`
`record.
`
`PETITIONER APPLE INC.
`
`EX. 1003-3
`
`PETITIONER APPLE INC. EX. 1003-3
`
`

`

`WO 2011/032256
`
`PCT/CA2009/001317
`
`CA 02812174 2013-03-15
`
`-4-
`
`The method may involve causing the media relay to forward the IP
`
`transmission to the callee at the callee IP address and callee UDP port
`
`identified by the callee IP address identifier and callee UDP port identifier of
`
`the record and identifying the source of the IP transmission forwarded to the
`
`callee with the callee RTP port
`
`identifier when the IP transmission was
`
`received at the caller RTP port, and causing the media relay to forward the IP
`
`transmission to the caller at
`
`the caller IP address and caller UDP port
`
`identified by the caller information of the record and identifying the source of
`
`the IP transmission forwarded to the callerwith the caller RTP port identifier
`
`10
`
`whenthe IP transmission wasreceived at the callee RTP port.
`
`In accordance with another aspect of the invention, there is provided a media
`
`relay apparatus for facilitating uninterrupted transmission of internet protocol
`
`(IP) transmissions containing real time transport protocol (RTP) data during
`
`15
`
`endpoint changes.
`
`The apparatus
`
`includes a processor,
`
`input/output
`
`interfaces in communication with the processor to provide for physical
`
`connection to an IP network, program memory and storage memory. The
`
`program memory is encoded with codesfor directing the processor to:
`
`20
`
`provide a logical input/output interface interacting with the input/output
`
`interfaces to define caller and callee RTP ports;
`
`maintain call records in the storage memory, each call record having
`
`fields associating session information, caller information and callee
`
`25
`
`information for
`
`IP communication sessions,
`
`the fields associating
`
`session information including caller and callee RTP port identifier fields
`
`identifying the caller and callee RTP ports respectively; and the caller
`
`information including a caller IP addressidentifier field and a caller port
`
`identifier field to which IP transmissions received at the callee RTP port
`
`30
`
`are to be transmitted, and a caller synchronization source (SSRC)
`
`identifier field, and the callee information including a callee IP address
`
`identifier field and a callee port identifier field to which IP transmissions
`
`PETITIONER APPLE INC.
`
`EX. 1003-4
`
`PETITIONER APPLE INC. EX. 1003-4
`
`

`

`WO 2011/032256
`
`PCT/CA2009/001317
`
`CA 02812174 2013-03-15
`
`-5-
`
`received at the caller RTP port are to be transmitted, and a callee
`
`SSRCidentifier field.
`
`The codes further direct the processor to identify one of the records
`
`having the caller RTP port identifier field contents or the callee RTP
`
`port identifier field contents matching a destination port identifier in the
`
`IP transmission when an IP transmission is received at the caller RTP
`
`port or the callee RTP port.
`
`10
`
`When such a record is respectively located and when the destination
`
`port identifier in the IP transmission matches the contents of the caller
`
`RTP port identifier field of the recard, the codes direct the processor to
`
`store a source IP addressidentifier and source port identifier from the
`
`IP transmission in the caller IP addressidentifier field and caller port
`
`15
`
`identifier field respectively when the contents of the caller IP address
`
`identifier field and caller port identifier field do not match the source IP
`
`addressidentifier and source port identifier respectively and a received
`
`SSRCidentifier in the IP transmission matches the contents of the
`
`caller SSRC identifier field.
`
`20
`
`Whenthe destination port identifier in the IP transmission matches the
`
`contents of the callee RTP port identifier field of the record, the codes
`
`direct the processor to store the source IP address identifier and
`
`source port identifier from the IP transmission in the callee IP address
`
`25
`
`identifier field and callee port
`
`identifier field respectively when the
`
`contents of the callee IP address identifier field and the callee port
`
`identifier field do not match the source IP addressidentifier and source
`
`port identifier respectively and the received SSRCidentifier in the IP
`
`transmission matches the contents of the callee SSRC identifier field.
`
`30
`
`The program memory may be further encoded with codesfor directing the
`
`processor to determine whether the IP transmission is a pre-determined
`
`transmission and,
`
`if so, determine whether the IP transmission is from the
`
`PETITIONER APPLE INC.
`
`EX. 1003-5
`
`PETITIONER APPLE INC. EX. 1003-5
`
`

`

`WO 2011/032256
`
`PCT/CA2009/001317
`
`CA 02812174 2013-03-15
`
`-6-
`
`caller or callee and when the pre-determined IP transmission is received from
`
`the caller, store the received SSRCidentifier in the caller SSRC identifier field
`
`in the record and when the pre-determined IP transmission is received from
`
`the callee, store the received SSRCin the callee SSRC identifier field in the
`
`record.
`
`The program memory may be further encoded with codes for directing the
`
`processor to determine whether the IP transmission is a pre-determined
`
`transmission and, if so, where the caller and callee are configured to use the
`
`10
`
`same SSRC, store the received SSRC in the caller SSRCidentifier field in the
`
`record andin the callee SSRCidentifier field in the record.
`
`The program memory may be further encoded with cades for directing the
`
`processor to:
`
`15
`
`when the IP transmission is received at the caller RTP port, forward the
`
`IP transmission to the callee identified by the contents of the callee IP
`
`addressidentifier field and the callee port identifier field and identify the
`
`source of the IP transmission according to the contents of the callee
`
`20
`
`RTP port identifier field; and
`
`when the IP transmission is received at the callee RTP port, forward
`
`the IP transmission to the caller identified by the contents of the caller
`
`IP addressidentifier field and the caller port identifier field and identify
`
`25
`
`the sourceof the IP transmission according to the contents of the caller
`
`RTP port identifier field.
`
`In accordance with another aspect of the invention, there is provided a media
`
`relay apparatus for facilitating uninterrupted transmission of internet protocol
`
`30
`
`(IP) transmissions containing real time transport protocol (RTP) data during
`
`endpoint changes. The media relay apparatus includes a processor, physical
`
`connection provisions
`
`for providing physical connections between the
`
`processor and an IP network. provisions
`
`interacting with the physical
`
`PETITIONER APPLE INC.
`
`EX. 1003-6
`
`PETITIONER APPLE INC. EX. 1003-6
`
`

`

`WO 2011/032256
`
`PCT/CA2009/001317
`
`CA 02812174 2013-03-15
`
`-7-
`
`connection provisions and the processor for providing a logical input/output
`
`interface defining caller and callee RTP ports. The apparatus further includes
`
`provisions for maintaining call records in memory, each of the call records
`
`having provisions for associating session information, caller information and
`
`callee information for IP communication sessions. These provisions include
`
`provisions for storing caller and callee RTP port
`
`identifiers identifying the
`
`caller and callee RTP ports respectively, provisions for storing a caller IP
`
`address
`
`identifier and a caller port
`
`identifier to which IP transmissions
`
`received at the callee RTP port are to be transmitted, provisions for storing a
`
`10
`
`caller synchronization source (SSRC)identifier, provisions for storing a callee
`
`IP address identifier and a callee port identifier to which IP transmissions
`
`received at the caller RTP port are to be transmitted, and provisions for
`
`storing a callee SSRCidentifier. The apparatus further includes provisions for
`
`identifying one of the records having a caller RTP port identifier or a callee
`
`15
`
`RTPport identifier matching a destination port identifier in the IP transmission
`
`whenan IP transmission is received at the caller RTP port or the callee RTP
`
`port. The apparatus further includes provisions for determining whether the
`
`destination port identifier in the IP transmission matches the caller RTP port
`
`identifier of the record. The apparatus further includes provisions for setting
`
`20
`
`the caller IP address identifier and caller port
`
`identifier as the source IP
`
`address
`
`identifier and source port
`
`identifier
`
`respectively from the IP
`
`transmission when thecaller IP addressidentifier and caller port identifier do
`
`not match the source IP address identifier and source port
`
`identifier
`
`respectively and a received SSRC identifier in the IP transmission matches
`
`25
`
`the contents of the caller SSRC identifier and the destination port identifier in
`
`the IP transmission matchesthe caller RTP port identifier of the record. The
`
`apparatus further includes provisions for determining whether the destination
`
`port identifier in the IP transmission matches the callee RTP port identifier of
`
`the record and provisionsfor setting the callee IP addressidentifier and callee
`
`30
`
`port identifier as the source IP address identifier and source port identifier
`
`respectively from the IP transmission when the callee IP addressidentifier
`
`and the callee port identifier do not match the source IP addressidentifier and
`
`source port identifier respectively and the received SSRCidentifier in the IP
`
`PETITIONER APPLE INC.
`
`EX. 1003-7
`
`PETITIONER APPLE INC. EX. 1003-7
`
`

`

`WO 2011/032256
`
`PCT/CA2009/001317
`
`CA 02812174 2013-03-15
`
`-8-
`
`transmission matches the contents of the callee SSRC identifier and the
`
`destination port identifier in the IP transmission matchesthe callee RTP port
`
`identifier of the record.
`
`The apparatus may further include provisions for determining whether the IP
`
`transmission is a pre-determined transmission and, if so, determining whether
`
`the IP transmission is from the caller or callee and provisions for storing the
`
`received SSRC identifier as the caller SSRC identifier when the pre-
`
`determined IP transmission is received from the caller and provisions for
`
`10
`
`storing the received SSRC identifier as the callee SSRC identifier when the
`
`pre-determined IP transmission is received from the callee.
`
`The apparatus may further include provisions for determining whether the IP
`
`transmission is a pre-determined transmission and provisions for storing the
`
`15
`
`received SSRCidentifier as the caller SSRCidentifier and as the callee SSRC
`
`identifier where the caller and callee are configured to use the same SSRC.
`
`The apparatus may further
`
`include provisions
`
`for
`
`forwarding the IP
`
`transmission to the callee identified by the callee IP addressidentifier and the
`
`20
`
`callee port identifier and for identifying the source of the IP transmission with
`
`the callee RTPport identifier wnen the received IP transmission was received
`
`at the caller RTP port and provisions for forwarding the IP transmission to the
`
`caller identified by the caller IP addressidentifier and caller port identifier and
`
`for identifying the source of the IP transmission with the caller RTP port
`
`25
`
`identifier when the received IP transmission was received at the callee RTP
`
`port.
`
`In accordance with another aspect of the invention,
`
`there is provided a
`
`computer readable medium encoded with codesfor directing a processorof a
`
`30
`
`media relay to facilitate uninterrupted transmission of internet protocol (IP)
`
`transmissions containing real
`
`time transport protocol
`
`(RTP) data during
`
`endpoint changes, the codes comprising codesfor directing the processor to:
`
`PETITIONER APPLE INC.
`
`EX. 1003-8
`
`PETITIONER APPLE INC. EX. 1003-8
`
`

`

`WO 2011/032256
`
`PCT/CA2009/001317
`
`CA 02812174 2013-03-15
`
`-9-
`
`maintain records, each record associating session information, caller
`
`information and callee information for IP communication sessions;
`
`the session information including caller and callee RTP port
`
`identifiers identifying caller and callee RTP ports respectively of
`
`the media relay;
`
`the caller information including a caller IP address identifier and
`
`a caller port identifier to which IP transmissions received at the
`
`callee RTP port are transmitted from the media relay, a caller
`
`synchronization source (SSRC) identifier; and
`
`the callee information including a callee IP addressidentifier and
`
`a callee port identifier to which IP transmissions received at the
`
`caller RTP port are transmitted from the media relay, a callee
`
`SSRC identifier; and
`
`when an IP transmission is received at the caller RTP port or the callee
`
`RTPport:
`
`identify one of the records having the caller RTP port identifier or
`
`the callee RTP port
`
`identifier matching a destination port
`
`identifier in the IP transmission;
`
`when the record is identified and when the destination
`
`port identifier in the IP transmission matches the caller
`
`RTPport identifier of the record,
`
`set a source IP address identifier and source port
`
`identifier from the IP transmission as the caller IP address
`
`identifier and caller port
`
`identifier
`
`respectively of the
`
`record when:
`
`PETITIONER APPLE INC.
`
`EX. 1003-9
`
`PETITIONER APPLE INC. EX. 1003-9
`
`

`

`WO 2011/032256
`
`PCT/CA2009/001317
`
`CA 02812174 2013-03-15
`
`-10-
`
`the caller
`
`IP address identifier and caller port
`
`identifier do not match the source IP address
`
`identifier and source port
`
`identifier respectively;
`
`and
`
`a received SSRC identifier in the IP transmission
`
`matchesthe caller SSRC identifier; and
`
`when the record is identified and when the destination port
`
`identifier in the IP transmission matches the callee RTP port
`
`identifier of the recard,
`
`set the source IP address identifier and source port
`
`identifier
`
`from the IP transmission as the callee IP
`
`addressidentifier and callee port identifier respectively of
`
`the record when:
`
`the callee IP address identifier and callee port
`
`identifier do not match the source IP address
`
`identifier and source port
`
`identifier respectively;
`
`and
`
`the received SSRC identifier in the IP transmission
`
`matches the callee SSRC identifier.
`
`10
`
`15
`
`20
`
`25
`
`The computer readable medium mayfurther include codes for directing the
`
`processor to determine whether the IP transmission is a pre-determined
`
`transmission and,
`
`if so, determine whether the IP transmission is from the
`
`30
`
`caller or callee and whenthe pre-determined IP transmission is received from
`
`the caller, store the received SSRCidentifier as the caller SSRC identifier in
`
`the record and whenthe pre-determined IP transmission is received from the
`
`PETITIONER APPLE INC.
`
`EX. 1003-10
`
`PETITIONER APPLE INC. EX. 1003-10
`
`

`

`WO 2011/032256
`
`PCT/CA2009/001317
`
`CA 02812174 2013-03-15
`
`-11-
`
`callee, store the received SSRC identifier as the callee SSRC identifier in the
`
`record.
`
`The computer readable medium mayfurther include codes for directing the
`
`processor to determine whether the IP transmission is a pre-determined
`
`transmission and, if so, where the caller and callee are configured to use the
`
`same SSRC, store the received SSRC identifier as the caller SSRC identifier
`
`in the record and as the callee SSRCidentifier in the record.
`
`10
`
`The computer readable medium may further include codesfor directing the
`
`processor to:
`
`if the IP transmission was received at the caller RTP port, cause the
`
`media relay to forward the IP transmission to the callee at the callee IP
`
`15
`
`address and callee UDP port
`
`identified by the callee IP address
`
`identifier and callee UDP port identifier and identify the source of the IP
`
`transmission forwarded to the callee with the callee RTP port identifier;
`
`and
`
`20
`
`if the IP transmission was received at the callee RTP port, cause the
`
`media relay to forward the IP transmission to the caller at the caller IP
`
`address and caller UDP port
`
`identified by the caller
`
`IP address
`
`identifier and caller UDP port identifier and identify the source of the IP
`
`transmission forwardedto the caller with the caller RTP port identifier.
`
`25
`
`30
`
`Other aspects and features of the present invention will become apparent to
`
`those ordinarily skilled in the art upon review of the following description of
`
`specific embodiments of the invention in conjunction with the accompanying
`
`figures.
`
`BRIEF DESCRIPTION OF THE DRAWINGS
`
`In drawings whichillustrate embodiments of the invention,
`
`PETITIONER APPLE INC.
`
`EX. 1003-11
`
`PETITIONER APPLE INC. EX. 1003-11
`
`

`

`WO 2011/032256
`
`PCT/CA2009/001317
`
`CA 02812174 2013-03-15
`
`-12-
`
`Figure 1
`
`is a schematic diagram illustrating a system for
`
`facilitating
`
`uninterrupted transmission of internet protocol (IP) transmissions
`
`containing real time transport protocol (RTP) data during endpoint
`
`changes, accordingto a first embodimentof the invention.
`
`Figure 2
`
`is a tabular representation of a call record used by the system
`
`shownin Figure 1.
`
`Figure 3
`
`is a flow chart of an authentication routine executed by a
`
`processor of a media relay shownin the system shownin Figure
`
`1.
`
`10
`
`Figure 4
`
`is a schematic representation of an internet protocol
`
`(IP)
`
`transmission accordingto the prior art.
`
`Figure 5
`
`is a tabular representation of the call record shownin Figure 2 as
`
`updated after receipt of an IP transmission at a caller port of the
`
`15
`
`Figure 6
`
`is a flow chart of a continuity routine executed by the processor of
`
`media relay shownin Figure 1.
`
`the media relay shownin Figure 1.
`
`Figure 7
`
`is a tabular representation of the call record as updated after
`
`execution of the continuity routine shown in Figure 6 when a pre-
`
`determined packetis received in the IP transmission.
`
`20
`
`Figure 8
`
`is a tabular representation of the call record shown in Figure 7
`
`further updated by the continuity routine after an IP transmission
`
`received subsequent to the pre-determined packetis received.
`
`Figure 9
`
`is a flow chart of a forwarding routine executed by the processorof
`
`the media relay shown in Figure 1
`
`to relay the received IP
`
`25
`
`transmission to a caller or callee with a source identification
`
`provided by the call record as updated by the continuity routine
`
`shownin Figure 6.
`
`DETAILED DESCRIPTION
`
`30
`
`Referring to Figure 1, a system for handling voice over internet protocol (IP)
`
`transmissions and more generally, IP transmissions, is shown generally at 20.
`
`The system 20 includes a routing controller/call controller (RC/CC) system 22
`
`and first, second and third base stations 24, 26 and 50. The basestations 24,
`
`PETITIONER APPLE INC.
`
`EX. 1003-12
`
`PETITIONER APPLE INC. EX. 1003-12
`
`

`

`WO 2011/032256
`
`PCT/CA2009/001317
`
`CA 02812174 2013-03-15
`
`-13-
`
`26 and 50 are operable to communicate with the RC/CC 22 via a networkor,
`
`as shown in this embodiment, separate networks 28 and 30, which in this
`
`embodiment depict the internet. The first and second basestations 24 and 26
`
`in this embodiment are operable to communicate with caller and callee mobile
`
`telephones 32 and 34 respectively using a cellular wireless network in a
`
`conventional manner as is known in the art. The first and second base
`
`stations 24 and 26 thus act as “endpoints” for IP transmissions between the
`
`caller and callee.
`
`10
`
`Generally, to establish a call from the caller mobile telephone 32 to the callee
`
`mobile telephone 34, the caller mobile telephone transmits to the first base
`
`station 24 a session initiation protocol (SIP) message shown generally at 38.
`
`The SIP message 38is transmitted from the caller mobile telephone 32 to the
`
`base station 24 and the first base station 24 formats the SIP message 38 into
`
`15
`
`an IP transmission and transmits the IP transmission through the internet 28
`
`to the RC/CC 22.
`
`In this embodiment,
`
`the first base station 24 is
`
`preconfigured with a network IP address 192.168.0.20 and_universal
`
`datagram protocol (UDP) port 12345.
`
`20
`
`In response to receipt of the SIP message 38, the RC/CC 22 communicates
`
`with a media relay 40 and sends the caller IP address identifier and caller
`
`UDP port identifier contained in the SIP message to the media relay 40 to
`
`identify the IP address and UDP port to which the media relay 40 should send
`
`communications to the first base station 24 for receipt by the caller mobile
`
`25
`
`telephone 32.
`
`The media relay 40 has input/output interfaces 41 in communication with the
`
`processor to provide for physical connection to an IP network such as the
`
`internet. The media relay 40 is programmed to provide a logical input/output
`
`30
`
`interface that interacts with the input/output interfaces 41 to define caller and
`
`callee real time transport protocol (RTP) ports in the conventional manner.
`
`PETITIONER APPLE INC.
`
`EX. 1003-13
`
`PETITIONER APPLE INC. EX. 1003-13
`
`

`

`WO 2011/032256
`
`PCT/CA2009/001317
`
`CA 02812174 2013-03-15
`
`-14-
`
`In response, the media relay 40 is configured to send a media relay IP
`
`addressidentifier and media relay RTP port identifier that it associates with
`
`the callee identified by the contents of the callee ID field in the SIP message
`
`38. The media relay 40 sends this information to the RC/CC 22 to essentially
`
`inform the RC/CC 22 of the media relay IP addressidentifier and callee RTP
`
`port identifier that it should convey to the callee mobile telephone 34 so that
`
`the callee telephone can cause IP transmissions to be sent from the second
`
`base station 26 to the media relay 40 which can then subsequently forward
`
`those transmissions to the caller mobile telephone 32.
`
`10
`
`In response to receipt of the media relay IP addressidentifier and the callee
`
`RTPport identifier designated by the media relay 40, the RC/CC 22 transmits
`
`a SIP invite message 42 through the internet 30 to the callee mobile
`
`telephone 34 through the second base station 26.
`
`In this embodiment, the
`
`15
`
`second base station 26 has an IP address (192.168.3.10) and a UDP port
`
`number(33123). Thus, the RC/CC 22 directs this SIP invite message 42 to
`
`the IP address and UDP port associated with the callee mobile telephone 34
`
`by the second base station 26.
`
`The second base station 26 then
`
`communicates this SIP invite message 42 to the callee mobile telephone 34
`
`20
`
`over the wireless network and the callee mobile telephone 34 returns a SIP
`
`okay message 44 to the second basestation 26.
`
`The SIP okay message format is shown at 44 and includesa caller identifier
`
`(ID), a callee ID, a call ID, a callee IP address identifier and a callee UDP port
`
`25
`
`identifier. The callee IP address identifier is the IP address of the second
`
`base station 26 and the callee UDP port identifier is the UDP port identifier
`
`associated with the callee mobile telephone 34 by the secandbasestation 26.
`
`The second base station 26 sends the SIP okay message 44 in an IP
`
`transmission through the internet 30 to the RC/CC 22 which communicates
`
`30
`
`the call
`
`ID, callee iP address identifier, and callee UDP port
`
`identifier
`
`contained in the SIP okay message 44 to the media relay 40 to identify to the
`
`media relay the IP address and UDP port associated with the callee.
`
`In
`
`response,
`
`the media relay 40 sends a reply message to the RC/CC 22
`
`PETITIONER APPLE INC.
`
`EX. 1003-14
`
`PETITIONER APPLE INC. EX. 1003-14
`
`

`

`WO 2011/032256
`
`PCT/CA2009/001317
`
`CA 02812174 2013-03-15
`
`-15-
`
`containing a media relay IP addressidentifier and caller RTP port identifier of
`a caller RTP port assigned by the media relay, to which the first base station
`
`24 should direct IP transmissions to the media relay for receipt by the callee
`
`mobile telephone 34.
`
`In this embodiment, this message includes a media
`
`relay IP address identifier of 192.168.1.10 and a caller RTP port identifier
`
`(R22125).
`
`The RC/CC 22 transmits a SIP okay message 46, having a format as shown,
`
`through the internet 28 to the first base station 24 and the first base station
`
`10
`
`communicates the media relay IP address identifier and the caller RTP port
`
`identifier associated with the caller to the caller mobile telephone 32.
`
`The above basic communications for establishing a call between the caller
`
`and callee mobile telephones 32 and 34 are described in further detail
`
`in
`
`15
`
`Applicant's related International Application No. PCT/CA2007/002150. Of
`
`interest in connection with the present invention is the following way in which
`
`the media relay 40 is configured to permit the caller mobile telephone 32 to
`
`move to another geographical location in which a handoff occurs between the
`
`first base station 24 and the third base station 50 having an IP address
`
`20
`
`identifier and UDP port identifier different from that of the first base station 24.
`
`When a handoff from the first base station 24 to the third base station 50
`
`occurs, the caller mobile telephone 32 ceases communication with the first
`
`base station 24 and establishes communication with the third base station 50.
`
`25
`
`However, since the third base station 50 has a different IP address identifier
`
`and UDP port identifier than the first base station 24, the media relay 40 will
`
`receive IP transmissions from the third base station 50 identifying the source
`
`of the transmissions with a different
`
`IP address identifier and UDP port
`
`identifier than those associated with the first base station. Normally, the
`
`30
`
`media relay 40 would reject such communications as being from an unknown
`
`source, however, due to the configuration of the media relay described below,
`
`IP transmissions from the third base station 50 are not rejected and the call
`
`can continue uninterrupted. To facilitate this, the media relay 40 is configured
`
`PETITIONER APPLE INC.
`
`EX. 1003-15
`
`PETITIONER APPLE INC. EX. 1003-15
`
`

`

`WO 2011/032256
`
`PCT/CA2009/001317
`
`CA 02812174 2013-03-15
`
`-16-
`
`with additional functionality beyond that which merely relays communications
`
`between the caller and callee.
`
`It is known that in general, a media relay 40 includes a processor 52, memory
`
`54 operable to be written to and read by the processor 52, and program
`
`memory 56 containing codes readable by the processor 52 that define
`
`program instructions for directing the processor 52 to carry out conventional
`
`media relay functions for transferring IP transmissions between the caller and
`
`the callee.
`
`In order to provide the functionality of the present invention, in this
`
`10
`
`embodiment, the media relay 40 is further configured with additional codes
`
`shown generally at 58 that direct
`
`the

This document is available on Docket Alarm but you must sign up to view it.


Or .

Accessing this document will incur an additional charge of $.

After purchase, you can access this document again without charge.

Accept $ Charge
throbber

Still Working On It

This document is taking longer than usual to download. This can happen if we need to contact the court directly to obtain the document and their servers are running slowly.

Give it another minute or two to complete, and then try the refresh button.

throbber

A few More Minutes ... Still Working

It can take up to 5 minutes for us to download a document if the court servers are running slowly.

Thank you for your continued patience.

This document could not be displayed.

We could not find this document within its docket. Please go back to the docket page and check the link. If that does not work, go back to the docket and refresh it to pull the newest information.

Your account does not support viewing this document.

You need a Paid Account to view this document. Click here to change your account type.

Your account does not support viewing this document.

Set your membership status to view this document.

With a Docket Alarm membership, you'll get a whole lot more, including:

  • Up-to-date information for this case.
  • Email alerts whenever there is an update.
  • Full text search for other cases.
  • Get email alerts whenever a new case matches your search.

Become a Member

One Moment Please

The filing “” is large (MB) and is being downloaded.

Please refresh this page in a few minutes to see if the filing has been downloaded. The filing will also be emailed to you when the download completes.

Your document is on its way!

If you do not receive the document in five minutes, contact support at support@docketalarm.com.

Sealed Document

We are unable to display this document, it may be under a court ordered seal.

If you have proper credentials to access the file, you may proceed directly to the court's system using your government issued username and password.


Access Government Site

We are redirecting you
to a mobile optimized page.





Document Unreadable or Corrupt

Refresh this Document
Go to the Docket

We are unable to display this document.

Refresh this Document
Go to the Docket