US8934476B2 - Enabling AD-HOC data communication over established mobile voice communications - Google Patents

Enabling AD-HOC data communication over established mobile voice communications Download PDF

Info

Publication number
US8934476B2
US8934476B2 US11/944,944 US94494407A US8934476B2 US 8934476 B2 US8934476 B2 US 8934476B2 US 94494407 A US94494407 A US 94494407A US 8934476 B2 US8934476 B2 US 8934476B2
Authority
US
United States
Prior art keywords
phone
computer
network
voice call
data
Prior art date
Legal status (The legal status 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 status listed.)
Expired - Fee Related, expires
Application number
US11/944,944
Other versions
US20090135806A1 (en
Inventor
Harold James Pulhug
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Cisco Technology Inc
Original Assignee
Cisco Technology Inc
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 Cisco Technology Inc filed Critical Cisco Technology Inc
Priority to US11/944,944 priority Critical patent/US8934476B2/en
Assigned to CISCO TECHNOLOGY, INC. reassignment CISCO TECHNOLOGY, INC. ASSIGNMENT OF ASSIGNORS INTEREST (SEE DOCUMENT FOR DETAILS). Assignors: PULHUG, HAROLD JAMES
Publication of US20090135806A1 publication Critical patent/US20090135806A1/en
Priority to US14/553,013 priority patent/US9736315B2/en
Application granted granted Critical
Publication of US8934476B2 publication Critical patent/US8934476B2/en
Expired - Fee Related legal-status Critical Current
Adjusted expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04MTELEPHONIC COMMUNICATION
    • H04M7/00Arrangements for interconnection between switching centres
    • H04M7/006Networks other than PSTN/ISDN providing telephone service, e.g. Voice over Internet Protocol (VoIP), including next generation networks with a packet-switched transport layer
    • H04M7/0066Details of access arrangements to the networks
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/1066Session management
    • H04L65/1069Session establishment or de-establishment
    • H04L65/4023
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/40Support for services or applications
    • H04L65/402Support for services or applications wherein the services involve a main real-time session and one or more additional parallel non-real time sessions, e.g. downloading a file in a parallel FTP session, initiating an email or combinational services
    • H04L65/4025Support for services or applications wherein the services involve a main real-time session and one or more additional parallel non-real time sessions, e.g. downloading a file in a parallel FTP session, initiating an email or combinational services where none of the additional parallel sessions is real time or time sensitive, e.g. downloading a file in a parallel FTP session, initiating an email or combinational services
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04MTELEPHONIC COMMUNICATION
    • H04M3/00Automatic or semi-automatic exchanges
    • H04M3/42Systems providing special services or facilities to subscribers
    • H04M3/42382Text-based messaging services in telephone networks such as PSTN/ISDN, e.g. User-to-User Signalling or Short Message Service for fixed networks
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/10Network architectures or network communication protocols for network security for controlling access to devices or network resources
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04MTELEPHONIC COMMUNICATION
    • H04M2203/00Aspects of automatic or semi-automatic exchanges
    • H04M2203/65Aspects of automatic or semi-automatic exchanges related to applications where calls are combined with other types of communication
    • H04M2203/654Pre, in or post-call message
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04MTELEPHONIC COMMUNICATION
    • H04M2250/00Details of telephonic subscriber devices
    • H04M2250/02Details of telephonic subscriber devices including a Bluetooth interface
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04MTELEPHONIC COMMUNICATION
    • H04M2250/00Details of telephonic subscriber devices
    • H04M2250/64Details of telephonic subscriber devices file transfer between terminals

Definitions

  • the present disclosure relates generally to computer networks and, more specifically, to communicating data between computers over the networks.
  • PCs Personal computers
  • the PCs are generally required to be connected to the communication networks in some manner, such as through Ethernet ports (e.g., at home or at an office) or wireless network adapters/cards (e.g., for wireless home networking or wireless fidelity, “Wi-Fi” networks), etc.
  • Ethernet ports e.g., at home or at an office
  • wireless network adapters/cards e.g., for wireless home networking or wireless fidelity, “Wi-Fi” networks
  • Wi-Fi wireless home networking or wireless fidelity
  • two users separated by a large distance may communicate with one another over an established voice call (e.g., using cellular/mobile phones), and may each have a PC (e.g., a laptop) locally accessible.
  • a PC e.g., a laptop
  • the first and second users must have access to the communication network.
  • either one of the PCs is unable to connect to a communication network (e.g., no conventional wired or wireless access, etc.)
  • the users are generally unable to exchange the document/data.
  • a connection were available, to establish the connection to the communication network (i.e., to “get online”) at this point of the call may be a long and arduous process.
  • each user may need to acquire a wireless connection (e.g., obtain an encryption key/authorization, etc.), then access a virtual private network (VPN), then log onto a conference server, and finally share the document through the conference server.
  • a wireless connection e.g., obtain an encryption key/authorization, etc.
  • VPN virtual private network
  • the result of this process is a disruption in the flow of communications between the two users, thus being particularly inefficient and ineffective (and possibly frustrating).
  • FIG. 1 illustrates an example computer network
  • FIG. 2 illustrates an example device/PC
  • FIG. 3 illustrates an example device/phone
  • FIG. 4 illustrates an example procedure for enabling ad-hoc data communication over established mobile voice communications
  • FIG. 5 illustrates an example computer network of an alternate embodiment.
  • a first personal computer may receive a trigger to establish a data communication session with a second PC over an established voice call between first and second communication devices (e.g., mobile/cellular phones), over a wide area network (WAN).
  • first and second communication devices e.g., mobile/cellular phones
  • WAN wide area network
  • the first PC may discover the first phone as an authorized personal area network (PAN) device, and may establish a first PAN communication session between the first PC and the first phone (e.g., a Bluetooth® session).
  • PAN personal area network
  • a request may then be transmitted to the second phone over the established voice call to establish the data communication session between the first and second PCs, and in response, the second phone may discover the second PC as an authorized PAN device from the second phone.
  • a second PAN communication session may thus be established between the second phone and the second PCs, and data may be exchanged between the first and second PC using the first and second PAN communication sessions and the established voice call. Accordingly, the first and second PCs use local (PAN) communication sessions to leverage the existing voice call to communicate data, such as where there is no other network connection between the first and second PCs.
  • PAN local
  • a computer network is a geographically distributed collection of nodes interconnected by communication links and segments for transporting data between end nodes, such as personal computers (PCs) and workstations (e.g., desktops and laptops).
  • end nodes such as personal computers (PCs) and workstations (e.g., desktops and laptops).
  • PCs personal computers
  • workstations e.g., desktops and laptops.
  • Many types of networks are available, such as local area networks (LANs) and wide area networks (WANs).
  • LANs typically connect the nodes over dedicated private communications links located in the same general physical location, such as a building or campus.
  • WANs typically connect geographically dispersed nodes over long-distance communications links, such as common carrier telephone lines, optical lightpaths, synchronous optical networks (SONET), or synchronous digital hierarchy (SDH) links.
  • SONET synchronous optical networks
  • SDH synchronous digital hierarchy
  • the Internet is an example of a WAN that connects disparate networks throughout the world, providing global communication between nodes on various networks.
  • the nodes typically communicate over the network by exchanging discrete frames or packets of data according to predefined protocols.
  • a protocol consists of a set of rules defining how the nodes interact with each other.
  • FIG. 1 is a schematic block diagram of an example computer network 100 illustratively comprising nodes/devices, such as one or more PCs 200 (e.g., 200 a and 200 b ), one or more communication device, such as phones 300 (e.g., 300 a and 300 b ), and a WAN 130 .
  • the nodes/devices may be interconnected by links (e.g., physical and/or wireless) in a manner as described herein in accordance with one or more embodiments of the disclosure.
  • links e.g., physical and/or wireless
  • data packets 150 e.g., traffic
  • FIG. 2 is a schematic block diagram of an example node/device 200 that may be advantageously used with one or more embodiments described herein, e.g., as a first PC 200 a and/or a second PC 200 b .
  • the device comprises a plurality of network interfaces 210 , one or more Input/Output (I/O) interfaces 215 , one or more processors 220 , and a memory 240 interconnected by a system bus 250 .
  • the I/O interfaces 215 contain the mechanical, electrical, and signaling circuitry for communicating with input and output devices, such as keyboards, mice, monitors, speakers, etc.
  • the network interfaces 210 (which may be considered to be I/O interfaces) contain the mechanical, electrical, and signaling circuitry for communicating data over physical and/or wireless links coupled to the network 100 .
  • the network interfaces may be configured to transmit and/or receive data using a variety of different communication protocols, including, inter alia, TCP/IP, UDP, ATM, synchronous optical networks (SONET), wireless protocols, Frame Relay, Ethernet, Fiber Distributed Data Interface (FDDI), etc.
  • network interfaces 210 for PCs 200 may be configured not only to communicate with devices over a LAN or WAN (interfaces 214 ), but also to communicate with local communication devices (e.g., phones 300 ) over a Personal Area Network (PAN) 140 (interfaces 212 ), such as through various wired or wireless communication protocols, e.g., Bluetooth®, etc.
  • PAN Personal Area Network
  • the memory 240 comprises a plurality of storage locations that are addressable by the processor(s) 220 and the network interfaces 210 for storing software programs and data structures associated with the embodiments described herein.
  • the processor(s) 220 may comprise necessary elements or logic adapted to execute the software programs and manipulate the data structures.
  • An operating system 242 e.g., the WindowsTM operating system from Microsoft®, Inc.
  • portions of which are typically resident in memory 240 and executed by the processor(s) functionally organizes the node (PC) by, inter alia, invoking operations in support of software processes and/or services executing on the device.
  • These software processes and/or services may comprise various client applications 248 and PAN protocol/services 246 . It will be apparent to those skilled in the art that other processor and memory means, including various computer-readable media, may be used to store and execute program instructions pertaining to the inventive technique described herein.
  • Client applications 248 contain computer executable instructions executed by each processor 220 to perform various functions related to use of the PCs 200 .
  • various word processors, presentation programs, graphical programs, etc. may be used by clients (users) of the PCs, as will be understood by those skilled in the art.
  • GUIs graphical user interfaces
  • CLIs command line interfaces
  • PAN protocol/services 246 contain various protocols and computer executable instructions executed by each processor 220 to perform functions related to PAN communication.
  • a well-known wireless PAN protocol is Bluetooth®, which allows for equipped devices to communicate with one another using Bluetooth® protocol messages to encapsulate the data/traffic (e.g., data 150 over PAN 140 a ).
  • other PAN protocols may be understood by those skilled in the art, and the use of Bluetooth® herein is merely a representative example.
  • WLAN wireless local area network
  • Wi-Fi wireless fidelity
  • various wired PAN protocols may be established, such as local physical connections (serial links, RS-232 links, universal serial bus or “USB” links, etc.) as will also be understood by those skilled in the art.
  • FIG. 3 is a schematic block diagram of an example node/device 300 that may be advantageously used with one or more embodiments described herein, e.g., as a first phone 300 a and/or a second phone 300 b .
  • the device comprises a plurality of network interfaces 310 , one or more I/O interfaces 315 , one or more processors 320 , and a memory 340 interconnected by a system bus 350 .
  • the I/O interfaces 315 contain the mechanical, electrical, and signaling circuitry for communicating with input and output devices, such as keypads, voice command microphones, displays, speakers, etc.
  • the network interfaces 310 contain the mechanical, electrical, and signaling circuitry for communicating data over wireless (or physical) links coupled to the network 100 .
  • the network interfaces may be configured to transmit and/or receive data using a variety of different communication protocols, including various wireless protocols (e.g., cellular, satellite, etc.) or wired protocols (e.g., common land-line telephone communication), etc.
  • network interfaces 310 for phones 300 may be configured not only to communicate with other phones/devices over WAN 130 (interfaces 314 ), but also to communicate with local devices (e.g., PCs 200 ) over a PAN 140 (interfaces 312 ), again, such as through various wired or wireless communication protocols, e.g., Bluetooth®, etc.
  • the memory 340 comprises a plurality of storage locations that are addressable by the processor(s) 320 and the network interfaces 310 for storing software programs and data structures associated with the embodiments described herein.
  • the processor(s) 320 may comprise necessary elements or logic adapted to execute the software programs and manipulate the data structures.
  • An operating system 342 e.g., cellular/mobile phone operating systems
  • portions of which are typically resident in memory 340 and executed by the processor(s) functionally organizes the device (phone) by, inter alia, invoking operations in support of software processes and/or services executing on the device.
  • PAN protocol/services 346 may comprise PAN protocol/services 346 , WAN protocol/services 344 , and in accordance with embodiments described herein, PAN/WAN exchange process/services 345 . It will be apparent to those skilled in the art that other processor and memory means, including various computer-readable media, may be used to store and execute program instructions pertaining to the inventive technique described herein.
  • WAN protocol/services 344 of phones 300 contain various protocols and computer executable instructions executed by each processor 320 to perform functions related to WAN communication, such as various mobile/cellular/satellite and/or land-based telephone communication techniques, as will be understood by those skilled in the art.
  • phones 300 may be embodied as communication devices such as mobile/cellular phones, smart phones/PDAs (personal digital assistants), internet phones (e.g., Voice over Internet Protocol, or “VoIP” phones), desktop phones, etc.
  • Other types of phones/communication techniques may also be used in accordance with the embodiments described herein, such as RF (Radio Frequency) phones, etc., as may be appreciated by those skilled in the art.
  • any telephonic communication between two phones may establish a WAN 130
  • conventional definitions of WANs e.g., service providers, links, routers, bridges, using the Transmission Control Protocol/Internet Protocol or “TCP/IP”, User Datagram Protocol or “UDP”, Asynchronous Transfer Mode or “ATM” protocol, Frame Relay protocol, Internet Packet Exchange or “IPX” protocol, etc.
  • TCP/IP Transmission Control Protocol/Internet Protocol
  • UDP User Datagram Protocol
  • ATM Asynchronous Transfer Mode or “ATM” protocol
  • Frame Relay protocol e.
  • IPX Internet Packet Exchange
  • PAN protocol/services 346 for phones 300 contain various protocols and computer executable instructions executed by each processor 320 to perform functions related to PAN communication (e.g., Bluetooth®, etc.). Accordingly, PAN services 346 of the phones 300 may communicate with PAN services 246 of the respective (local) PCs 200 , such as over PAN interfaces 312 / 212 .
  • a PC 200 is unable to connect to a communication network (e.g., a LAN/WAN), such as where no acceptable wired or wireless connection is conventionally available (e.g., weak wireless networks or non-existent or unauthorized wired/wireless networks, etc.).
  • a communication network e.g., a LAN/WAN
  • no acceptable wired or wireless connection is conventionally available (e.g., weak wireless networks or non-existent or unauthorized wired/wireless networks, etc.).
  • the process involved with establishing the connection may be time-consuming and complex (that is, where the PC is not already connected). Often, such situations may occur during an active/established voice call (e.g., using cellular/mobile phones 300 ) between two users separated by a large distance, each having a PC (e.g., a laptop) locally accessible. If at least one of the respective PCs is without (easy) access to a communication network, then the two users generally have been unable to (easily) share/exchange documents/data
  • a first PC 200 a may receive a trigger to establish a data communication session with a second PC 200 b over an established voice call between a first and second phones ( 300 a and 300 b , respectively) over a WAN 130 .
  • the first PC 200 a may discover the first phone 300 a as an authorized PAN device, and may establish a first PAN communication session between the first PC and the first phone over PAN 140 a .
  • a request may then be transmitted to the second phone 300 b over the established voice call (over WAN 130 ) to establish the data communication session between the first and second PCs 200 , and in response, the second phone may discover the second PC 200 b as an authorized PAN device from the second phone.
  • a second PAN communication session may thus be established between the second phone 300 b and the second PC 200 b (e.g., over PAN 140 b ), and data may be exchanged between the first and second PCs using the first and second PAN communication sessions and the established voice call.
  • the first and second PCs use local (PAN) communication sessions to leverage the existing voice call to communicate data (e.g., on a separate channel than that which carries the voice call), such as where there is no other network connection between the first and second PCs.
  • two users may establish a voice call between a first phone 300 a (e.g., a first user) and a second phone 300 b (e.g., a second user) over a WAN 130 .
  • a first phone 300 a e.g., a first user
  • a second phone 300 b e.g., a second user
  • Any type of conventional phone/voice conversation may be established in accordance with one or more embodiments described herein, such that the voice call is also capable of carrying/transmitting data over the WAN 130 communication media (e.g., using WAN protocol services 344 ).
  • second generation (2G) cellular phone technologies such as GSM (a Global System for Mobile Communications) and CDMA (Code Division Multiplex Access) may be configured to transport data in addition to voice.
  • GSM Global System for Mobile Communications
  • CDMA Code Division Multiplex Access
  • Third generation (3G) or fourth generation (4G) cellular technologies may be more adaptable for use with the embodiments described herein, as may be appreciated by those skilled in the art, particularly due to their higher transfer rates, etc.
  • other conventional voice call mediums may be used, such as satellite, RF, land-based, VoIP, etc.
  • the phones 300 a and 300 b need not be of the same type (e.g., one cellular and one satellite, or one cellular and one land-based, etc., as described herein).
  • WAN 130 may represent a single communication network (e.g., cellular), or a combination of communication networks, such as providing connectivity between a first cellular phone to a second land-based phone, etc.
  • connectivity between multiple service providers (SPs) of the two phones may also be represented by the WAN 130 , as will be appreciated by those skilled in the art.
  • SPs service providers
  • the first user may wish to share data/information with the second user on respective first and second PCs 200 local to each of the users.
  • a communication network e.g., conventional wired/wireless LAN/WAN networks
  • the first user may “trigger” the first PC 200 a to establish a data communication session with the second PC 200 b , such as through a GUI, CLI, etc. in cooperating conjunction/relation with a client application 248 .
  • the client application 248 may be a dedicated program/process for establishing the data communication session with the second PC, or may be a feature of another program/process, such as a tool for use within a presentation program or word processing program, etc.
  • the first PC In response, to receiving the trigger, the first PC discovers the first phone 300 a as an authorized PAN device.
  • the first PC 200 a may utilize PAN protocol/services 246 to search for local devices on PAN network 140 a (using interface 212 ), and may locate the first phone 300 a through the PAN protocol/services 346 of the phone (e.g., a Bluetooth® connection, as will be understood by those skilled in the art).
  • the first user may be required to authorize/accept the first phone and/or first PC as an authorized PAN device from the first PC and/or phone, respectively, such as through an authorization prompt (e.g., on a CLI/GUI).
  • the first PC may be configured to select a pre-authorized phone 300 a (that is, the first user's phone), or may provide a list of available phones for selection by the user.
  • the first PC and phone may establish a first PAN communication session 140 a , accordingly.
  • the first PAN communication session may be established by the first PC simply sending a message 150 to the first phone using PAN communication protocols, i.e., no initial authorization. (Note that in the event a PAN communication session 140 a previously exists between the first PC 200 a and first phone 300 a , the trigger may cause the first PC to discover/utilize that previously established session 140 a , accordingly.)
  • the first phone 300 a may transmit a request to the second phone 300 b over the established voice call (over WAN 130 ) to establish a data communication session between the first and second PCs.
  • the first phone 300 a utilizes its PAN/WAN exchange services 345 to dynamically determine that the request is to be sent to the second phone 300 b (i.e., that with which a current voice call is in progress) in response to establishing the first PAN communication session.
  • the first PC may generate the request for the second phone, and may forward the request to the first phone 300 a to be passed over WAN 130 to the second phone 300 b .
  • the transmitted request may be the message 150 forwarded over WAN 130 to the second phone 300 b .
  • the second phone 300 b may attempt to discover the second PC 200 b as an authorized PAN device. For example, in a similar manner as described above, the second phone 300 b may utilize PAN protocol/services 346 to search for local devices on a PAN network 140 b (using interface 312 ), and may locate the second PC 200 b through the PAN protocol/services 246 of the PC (e.g., a second Bluetooth® connection.
  • the second user may be required to authorize/accept the second PC and/or second phone as an authorized PAN device from the second phone and/or PC, respectively, such as through an authorization prompt (e.g., on a CLI/GUI for the second user).
  • the second phone may be configured to select a pre-authorized PC 200 b (that is, the second user's PC), or may provide a list of available PCs for selection by the user.
  • the second phone and PC may establish a second PAN communication session 140 b , accordingly.
  • the second PAN communication session may be established by the second phone simply forwarding the received message 150 to the second PC using PAN communication protocols, i.e., with no initial authorization. (Note, again, that in the event a PAN communication session 140 b previously exists between the second phone 300 b and second PC 200 b , the received request may cause the second phone to discover/utilize that previously established session 140 b , accordingly.)
  • the first and second PCs 200 may exchange data, accordingly.
  • the first PC 200 a may send data 150 over the first PAN communication session 140 a to the first phone 300 a .
  • the first phone may then send the data through the established voice call (WAN 130 ) to the second phone 300 b , which transmits the data 150 over the second PAN communication session 140 b to the second PC 200 b .
  • the established voice call may utilize a first communication path (channel) through the WAN 130 (e.g., a set path of network nodes/links).
  • the exchanged data 150 between the first and second PCs may also utilize that same first communication path (channel) through the WAN.
  • a second communication path (channel) through the WAN 130 between the first and second phones may be used for the exchanged data 150 between the first and second PCs that is different from the first communication path. That is, the voice call and the data 150 may traverse different paths through the WAN, but both originate and terminate on the first and second phones 300 a and 300 b (such as for voice-sensitive packets versus standard data packets, as will be appreciated by those skilled in the art).
  • the exchange of data should be substantially inaudible during the established voice call.
  • the one or more embodiments of the present disclosure permit users to facilitate a collaboration/communication session from their PCs when in an active voice call on their mobile devices (e.g., phones) without a hardwired or wireless connection to a network from their PC (other than the PAN session, that is).
  • the initiator's PC 200 a client application 248 invokes a data communication stream that leverages the voice call from the initiator's phone 300 a to be the conduit of communications to the receiver.
  • the receiver's phone 300 b receives the communications and dynamically forwards the received messages/data 150 to the receiver's PC 200 b to “pop” the desired shared application/document (e.g., open/display the data on the receiver's PC), thus terminating the communication on the remote PC 200 b .
  • the ad-hoc data communication network is based on the voice call's connectivity between the first and second phones 300 .
  • the communication session between the PCs is established and maintained without (necessary) knowledge by each PC as to the destination or address of the respective remote PC.
  • the first PC 200 a shares a localized PAN session with the first phone 300 a
  • the voice call carries the exchanged data between the first phone and second phone 300 b wherever the second phone may be (i.e., a concern of the established voice call and associated SPs).
  • the second phone 300 b shares the data with the local second PC over its PAN session, not (necessarily) according to an address of the second PC as provided by the first PC, but rather based on the fact that the second PC is located in the same PAN session (PAN 140 b ).
  • the first user on the first phone 300 a communicates with a second user and a respective second phone 300 b .
  • the first user wishes to send a document (e.g., illustratively as message 150 ) from the first PC 200 a to the second user's second PC 200 b
  • the first user may initiate a trigger at the first PC to send the document 150 to the second user using the ad-hoc communications session described herein (e.g., a “click-to-share” trigger).
  • the data to be exchanged may be encoded by the first PC as images, videos, executable programs, files, raw data, etc.
  • the document 150 is a file that the first PC is to send to the second PC
  • the first PC may further encode the document (data) 150 for the data exchange in a format suitable for transmission over the communication session, such as a video of the document as shown on the first PC (e.g., a portion of the first PC's display to be shared between the first and second PCs).
  • a video stream may be used so that the second PC 200 b need not have an application necessary to view the data (e.g., the document) itself, but only an application ( 248 ) to view the exchanged video.
  • the video may be encoded in an H.264/SVC (Scalable Video Coding) or MPEG-4 format (as will be understood by those skilled in the art), and may be transmitted to the first phone 300 a using a communication protocol over the first PAN session ( 140 a ).
  • H.264/SVC Scalable Video Coding
  • MPEG-4 MPEG-4 format
  • An illustrative protocol that may be used to “stream” the video from the first PC 200 a to the first phone 300 a is the known SMIL (synchronized multimedia integration language) protocol.
  • the SMIL protocol is an open source communication protocol for PAN networks (e.g., PC-to-phone) that is designed for rich media (images, audio, video, rich text, etc.) and is compatible with MMS (Multimedia Message Service, not just text as in the Short Message Service or “SMS”).
  • MMS Multimedia Message Service, not just text as in the Short Message Service or “SMS”.
  • the first and second phones 300 may communicate the data 150 over the established voice call using MMS messages, as will be appreciated by those skilled in the art.
  • the PAN/WAN exchange 345 on the first phone 300 a may take SMIL requests/messages 150 , and sends them to the second phone 300 b using MMS messages. Since the voice call is already in progress, the phones can gain the destination information for the MMS messages, accordingly.
  • the second phone 300 b receives the MMS messages ( 150 ), and PAN/WAN exchange 345 extracts the SMIL stream and forwards it over PAN 140 b to the second PC 200 b .
  • the corresponding application on the second PC 200 b e.g., PAN services 246 and/or a specific client application 248 ) may then decode the SMIL stream and display the sender's content on the second PC. In this manner, the established voice call remains (is not “dropped”), and data may be transmitted between the first and second PCs. Particularly, data and voice may be transmitted simultaneously, with data inaudibly layered onto the existing voice communications stream.
  • the embodiments mentioned above describe both PCs as not being interconnected with a communication network (that is, via a connection other than through a respective PAN communication session 140 with either the first or second phone), one or more other embodiments may also utilize the techniques described herein.
  • the first and second phones 300 may be embodied as a smartphone having both the respective PC (e.g., 200 b ) and phone (e.g., 300 b ) on a single device.
  • the respective PAN communication session may be localized to the single device, i.e., both receiving voice-encapsulated data 150 (e.g., MMS data), and converting it to a displayable format (e.g., either through the SMIL protocol or direct to a display application 248 on the smartphone).
  • voice-encapsulated data 150 e.g., MMS data
  • a displayable format e.g., either through the SMIL protocol or direct to a display application 248 on the smartphone.
  • one or the other of either the phone-to-WAN connections or the PAN sessions 140 may be hardwired as opposed to wireless/mobile. For instance, if the second phone 300 b is hardwired to an access point of the WAN 130 (e.g., a desk/house phone), it may still have PAN services 346 and the associated capability to communicate with an aptly equipped second PC 200 b .
  • one of the first or second PAN communication sessions may be a hardwired session, such as where a phone 300 and respective PC 200 are hardwired to each other (e.g., using various hardwire communication media and protocols), yet the phone still utilizes the established voice call to transmit the data 150 .
  • a hardwired session such as where a phone 300 and respective PC 200 are hardwired to each other (e.g., using various hardwire communication media and protocols), yet the phone still utilizes the established voice call to transmit the data 150 .
  • either of the respective first and second pairs of phones/PCs may be wired and/or wireless, accordingly.
  • FIG. 4 illustrates an example procedure for enabling ad-hoc data communication over established mobile voice communications in accordance with one or more embodiments described herein.
  • the procedure 400 starts at step 405 , and continues to step 410 , where a voice call is established between a first phone (e.g., 300 a ) and second phone (e.g., 300 b ) over a WAN (e.g., 130 ).
  • a voice call is established between a first phone (e.g., 300 a ) and second phone (e.g., 300 b ) over a WAN (e.g., 130 ).
  • a voice call is established between a first phone (e.g., 300 a ) and second phone (e.g., 300 b ) over a WAN (e.g., 130 ).
  • a WAN e.g., 130
  • an illustrative embodiment described above utilizes two mobile (e.g., cellular) phones 300 over a
  • a trigger may be received at a first PC (e.g., 200 a , such as a first user's laptop) to establish a data communication session with a second PC (e.g., 200 b , such as a second user's laptop).
  • the first PC 200 a discovers the first phone 300 a as an authorized PAN device in step 420 over PAN 140 a , for example, through a discovery communication protocol, such as Bluetooth®.
  • a first PAN communication session may be established in step 425 in response to the discovered device between the first PC and the first phone.
  • an authorization request may be prompted from a user in step 430 for the PAN communication session, e.g., for security.
  • a request is transmitted to the second phone 300 b over the established voice call (e.g., by the first phone 300 a or the first PC 200 a via the first phone, as mentioned above) to establish the data communication session between the first and second PC (e.g., over WAN 130 ).
  • the second phone receives the request in step 440 , and may dynamically discover the second PC 200 b as an authorized PAN device in step 445 over PAN 140 b .
  • the second phone and second PC may establish a shared second PAN communication session in step 450 (again, optionally prompting a second user for authorization in step 455 ).
  • the first and second PCs may exchange data (e.g., respectively encoding and decoding data/messages 150 ) in step 460 using the first and second PAN communication sessions and the established voice call (e.g., over WAN 130 ).
  • the first PC 200 a may encode a video stream to be transmitted over the ad-hoc communication sessions (first and second PANs along with the established voice call), and the second PC 200 b may receive the encoded video stream, and may decode the content accordingly.
  • the procedure 400 ends in step 495 .
  • FIG. 5 illustrates an example network 500 that is similar to network 100 of FIG. 1 above, however instead of two PAN communication sessions 140 , the second phone/PC communication sessions (WAN connectivity as well as PAN communication session 140 b ) is configured in a different manner.
  • a conversion device 510 interconnected with the WAN 130 is a conversion device 510 , which may be used to direct or “route” traffic from the WAN to appropriate devices, such as both phones 300 and PCs 200 .
  • the first phone 300 a may transmit a request to wired phone 300 b of network 500 over the established voice call to establish the data communication session between the first and second PCs.
  • the conversion device 510 e.g., within the WAN 130 ) intercepts the request, and determines the second PC 200 b that is associated with the wired phone. For example, based on a configured listing of phone-to-PC associations 515 (e.g., manually and/or dynamically configured), the conversion device may be aware of an association between particular phones 300 of the network 500 and particular PCs 200 , such as a particular office phone to a PC in that office.
  • the conversion device may establish a wired communication session with the appropriate second PC 200 b based on the associated phone 300 b of the established voice call.
  • data 150 may be exchanged between the first and second PCs using the first wireless PAN session 140 a and the established voice call, where the conversion device 510 directs the voice call to the wired phone 300 b and the exchanged data to the second PC 200 b.
  • procedure 400 may continue from step 435 to step 470 (that is, instead of step 440 ), where a conversion device 510 intercepts the request to establish a data communication session between the first and second PCs (e.g., over WAN 130 ).
  • the conversion device 510 associates the second PC 200 b with the second phone 300 b , such as through various configured lists/tables 515 , and establishes a communication session with the second PC in step 480 .
  • the first and second PCs may exchange data in step 485 (e.g., respectively encoding and decoding data/message 150 ) using the first PAN communication session and established voice call.
  • the conversion device 510 receives voice traffic and data traffic, and directs the voice call to the second phone 300 b and the data to the second PC 200 b , accordingly, and the procedure 400 ends in step 495 .
  • the novel techniques described herein enable ad-hoc data communication over established mobile voice communications in a computer network.
  • the novel techniques allow for peer-to-peer communications between the PCs using generally standard mobile device and PC hardware/software components (e.g., Bluetooth® and cellular networks), e.g., where conventional connections to communication networks are unavailable or otherwise inconvenient to access.
  • the techniques described above may utilize any standards-based network as either PAN communication session and for the voice call, allowing a wide range of connectivity for appropriately configured devices.
  • the dynamic aspects of one or more embodiments described herein alleviate the need for cumbersome and inefficient manual configuration.

Abstract

In one embodiment, a first PC may receive a trigger to establish a data communication session with a second PC over an established voice call between first and second phones over a WAN. In response, the first PC may discover the first phone as an authorized personal area network (PAN) device, and may establish a first PAN communication session between the first PC and the first phone. A request may then be transmitted to the second phone over the established voice call to establish the data communication session between the first and second PCs, and in response, the second phone may discover the second PC as an authorized PAN device from the second phone. A second PAN communication session may thus be established between the second phone and the second PC, and data may be exchanged between the PCs using the PAN communication sessions and the established voice call.

Description

TECHNICAL FIELD
The present disclosure relates generally to computer networks and, more specifically, to communicating data between computers over the networks.
BACKGROUND
Personal computers (PCs) often share/exchange data over wired and/or wireless communication networks, as will be understood by those skilled in the art. As such, the PCs are generally required to be connected to the communication networks in some manner, such as through Ethernet ports (e.g., at home or at an office) or wireless network adapters/cards (e.g., for wireless home networking or wireless fidelity, “Wi-Fi” networks), etc. Occasionally, however, there are times when a PC is unable to connect to a communication network, such as where no acceptable wired or wireless connection is conventionally available. Also, even in certain situations where an acceptable connection to a communication network is available, the process involved with establishing the connection may be time-consuming and complex.
For example, two users separated by a large distance may communicate with one another over an established voice call (e.g., using cellular/mobile phones), and may each have a PC (e.g., a laptop) locally accessible. If a first user wishes to send a second user a document to discuss while on the voice call, the first and second users must have access to the communication network. If either one of the PCs is unable to connect to a communication network (e.g., no conventional wired or wireless access, etc.), then the users are generally unable to exchange the document/data. As noted, even if a connection were available, to establish the connection to the communication network (i.e., to “get online”) at this point of the call may be a long and arduous process. For example, each user may need to acquire a wireless connection (e.g., obtain an encryption key/authorization, etc.), then access a virtual private network (VPN), then log onto a conference server, and finally share the document through the conference server. The result of this process is a disruption in the flow of communications between the two users, thus being particularly inefficient and ineffective (and possibly frustrating).
BRIEF DESCRIPTION OF THE DRAWINGS
The above and further advantages of the invention may be better understood by referring to the following description in conjunction with the accompanying drawings in which like reference numerals indicate identically or functionally similar elements, of which:
FIG. 1 illustrates an example computer network;
FIG. 2 illustrates an example device/PC;
FIG. 3 illustrates an example device/phone;
FIG. 4 illustrates an example procedure for enabling ad-hoc data communication over established mobile voice communications; and
FIG. 5 illustrates an example computer network of an alternate embodiment.
DESCRIPTION OF EXAMPLE EMBODIMENTS Overview
According to embodiments of the disclosure, a first personal computer (PC) may receive a trigger to establish a data communication session with a second PC over an established voice call between first and second communication devices (e.g., mobile/cellular phones), over a wide area network (WAN). In response, the first PC may discover the first phone as an authorized personal area network (PAN) device, and may establish a first PAN communication session between the first PC and the first phone (e.g., a Bluetooth® session). A request may then be transmitted to the second phone over the established voice call to establish the data communication session between the first and second PCs, and in response, the second phone may discover the second PC as an authorized PAN device from the second phone. A second PAN communication session may thus be established between the second phone and the second PCs, and data may be exchanged between the first and second PC using the first and second PAN communication sessions and the established voice call. Accordingly, the first and second PCs use local (PAN) communication sessions to leverage the existing voice call to communicate data, such as where there is no other network connection between the first and second PCs.
Description
A computer network is a geographically distributed collection of nodes interconnected by communication links and segments for transporting data between end nodes, such as personal computers (PCs) and workstations (e.g., desktops and laptops). Many types of networks are available, such as local area networks (LANs) and wide area networks (WANs). LANs typically connect the nodes over dedicated private communications links located in the same general physical location, such as a building or campus. WANs, on the other hand, typically connect geographically dispersed nodes over long-distance communications links, such as common carrier telephone lines, optical lightpaths, synchronous optical networks (SONET), or synchronous digital hierarchy (SDH) links. The Internet is an example of a WAN that connects disparate networks throughout the world, providing global communication between nodes on various networks. The nodes typically communicate over the network by exchanging discrete frames or packets of data according to predefined protocols. In this context, a protocol consists of a set of rules defining how the nodes interact with each other.
FIG. 1 is a schematic block diagram of an example computer network 100 illustratively comprising nodes/devices, such as one or more PCs 200 (e.g., 200 a and 200 b), one or more communication device, such as phones 300 (e.g., 300 a and 300 b), and a WAN 130. Illustratively, the nodes/devices may be interconnected by links (e.g., physical and/or wireless) in a manner as described herein in accordance with one or more embodiments of the disclosure. Those skilled in the art will understand that any number of nodes, devices, links, etc. may be used in the computer network, and that the view shown herein is for simplicity. Also, data packets 150 (e.g., traffic) may be exchanged among the nodes/devices of the computer network 100 using a variety of techniques as described herein.
FIG. 2 is a schematic block diagram of an example node/device 200 that may be advantageously used with one or more embodiments described herein, e.g., as a first PC 200 a and/or a second PC 200 b. The device comprises a plurality of network interfaces 210, one or more Input/Output (I/O) interfaces 215, one or more processors 220, and a memory 240 interconnected by a system bus 250. The I/O interfaces 215 contain the mechanical, electrical, and signaling circuitry for communicating with input and output devices, such as keyboards, mice, monitors, speakers, etc. The network interfaces 210 (which may be considered to be I/O interfaces) contain the mechanical, electrical, and signaling circuitry for communicating data over physical and/or wireless links coupled to the network 100. The network interfaces may be configured to transmit and/or receive data using a variety of different communication protocols, including, inter alia, TCP/IP, UDP, ATM, synchronous optical networks (SONET), wireless protocols, Frame Relay, Ethernet, Fiber Distributed Data Interface (FDDI), etc. In particular, as described herein, network interfaces 210 for PCs 200 may be configured not only to communicate with devices over a LAN or WAN (interfaces 214), but also to communicate with local communication devices (e.g., phones 300) over a Personal Area Network (PAN) 140 (interfaces 212), such as through various wired or wireless communication protocols, e.g., Bluetooth®, etc.
The memory 240 comprises a plurality of storage locations that are addressable by the processor(s) 220 and the network interfaces 210 for storing software programs and data structures associated with the embodiments described herein. The processor(s) 220 may comprise necessary elements or logic adapted to execute the software programs and manipulate the data structures. An operating system 242 (e.g., the Windows™ operating system from Microsoft®, Inc.), portions of which are typically resident in memory 240 and executed by the processor(s), functionally organizes the node (PC) by, inter alia, invoking operations in support of software processes and/or services executing on the device. These software processes and/or services may comprise various client applications 248 and PAN protocol/services 246. It will be apparent to those skilled in the art that other processor and memory means, including various computer-readable media, may be used to store and execute program instructions pertaining to the inventive technique described herein.
Client applications 248 contain computer executable instructions executed by each processor 220 to perform various functions related to use of the PCs 200. For instance, various word processors, presentation programs, graphical programs, etc., may be used by clients (users) of the PCs, as will be understood by those skilled in the art. For example, in conjunction with I/O interfaces 215, various graphical user interfaces (GUIs) or command line interfaces (CLIs) may be implemented to allow a user to interact with the client applications 248 of the PCs 200, accordingly.
PAN protocol/services 246 contain various protocols and computer executable instructions executed by each processor 220 to perform functions related to PAN communication. For example, a well-known wireless PAN protocol is Bluetooth®, which allows for equipped devices to communicate with one another using Bluetooth® protocol messages to encapsulate the data/traffic (e.g., data 150 over PAN 140 a). Notably, other PAN protocols may be understood by those skilled in the art, and the use of Bluetooth® herein is merely a representative example. For instance, in addition to Bluetooth sessions, other wireless local area network (WLAN) sessions and wireless fidelity (Wi-Fi) sessions may be used. Also, various wired PAN protocols may be established, such as local physical connections (serial links, RS-232 links, universal serial bus or “USB” links, etc.) as will also be understood by those skilled in the art.
FIG. 3 is a schematic block diagram of an example node/device 300 that may be advantageously used with one or more embodiments described herein, e.g., as a first phone 300 a and/or a second phone 300 b. The device comprises a plurality of network interfaces 310, one or more I/O interfaces 315, one or more processors 320, and a memory 340 interconnected by a system bus 350. The I/O interfaces 315 contain the mechanical, electrical, and signaling circuitry for communicating with input and output devices, such as keypads, voice command microphones, displays, speakers, etc. The network interfaces 310 contain the mechanical, electrical, and signaling circuitry for communicating data over wireless (or physical) links coupled to the network 100. The network interfaces may be configured to transmit and/or receive data using a variety of different communication protocols, including various wireless protocols (e.g., cellular, satellite, etc.) or wired protocols (e.g., common land-line telephone communication), etc. In particular, as described herein, network interfaces 310 for phones 300 may be configured not only to communicate with other phones/devices over WAN 130 (interfaces 314), but also to communicate with local devices (e.g., PCs 200) over a PAN 140 (interfaces 312), again, such as through various wired or wireless communication protocols, e.g., Bluetooth®, etc.
The memory 340 comprises a plurality of storage locations that are addressable by the processor(s) 320 and the network interfaces 310 for storing software programs and data structures associated with the embodiments described herein. The processor(s) 320 may comprise necessary elements or logic adapted to execute the software programs and manipulate the data structures. An operating system 342 (e.g., cellular/mobile phone operating systems), portions of which are typically resident in memory 340 and executed by the processor(s), functionally organizes the device (phone) by, inter alia, invoking operations in support of software processes and/or services executing on the device. These software processes and/or services may comprise PAN protocol/services 346, WAN protocol/services 344, and in accordance with embodiments described herein, PAN/WAN exchange process/services 345. It will be apparent to those skilled in the art that other processor and memory means, including various computer-readable media, may be used to store and execute program instructions pertaining to the inventive technique described herein.
WAN protocol/services 344 of phones 300 contain various protocols and computer executable instructions executed by each processor 320 to perform functions related to WAN communication, such as various mobile/cellular/satellite and/or land-based telephone communication techniques, as will be understood by those skilled in the art. For example, phones 300 may be embodied as communication devices such as mobile/cellular phones, smart phones/PDAs (personal digital assistants), internet phones (e.g., Voice over Internet Protocol, or “VoIP” phones), desktop phones, etc. Other types of phones/communication techniques may also be used in accordance with the embodiments described herein, such as RF (Radio Frequency) phones, etc., as may be appreciated by those skilled in the art. In particular, any telephonic communication between two phones may establish a WAN 130, and conventional definitions of WANs (e.g., service providers, links, routers, bridges, using the Transmission Control Protocol/Internet Protocol or “TCP/IP”, User Datagram Protocol or “UDP”, Asynchronous Transfer Mode or “ATM” protocol, Frame Relay protocol, Internet Packet Exchange or “IPX” protocol, etc.) are only representative examples of inter-phone communication.
Also, similar to that of the PCs 200 above, PAN protocol/services 346 for phones 300 contain various protocols and computer executable instructions executed by each processor 320 to perform functions related to PAN communication (e.g., Bluetooth®, etc.). Accordingly, PAN services 346 of the phones 300 may communicate with PAN services 246 of the respective (local) PCs 200, such as over PAN interfaces 312/212.
As noted, there are times when a PC 200 is unable to connect to a communication network (e.g., a LAN/WAN), such as where no acceptable wired or wireless connection is conventionally available (e.g., weak wireless networks or non-existent or unauthorized wired/wireless networks, etc.). Also, even in certain situations where an acceptable connection to a communication network is available, the process involved with establishing the connection may be time-consuming and complex (that is, where the PC is not already connected). Often, such situations may occur during an active/established voice call (e.g., using cellular/mobile phones 300) between two users separated by a large distance, each having a PC (e.g., a laptop) locally accessible. If at least one of the respective PCs is without (easy) access to a communication network, then the two users generally have been unable to (easily) share/exchange documents/data.
Enabling Ad-Hoc Data Communication Over Established Mobile Voice Communications
According to embodiments of the disclosure, a first PC 200 a may receive a trigger to establish a data communication session with a second PC 200 b over an established voice call between a first and second phones (300 a and 300 b, respectively) over a WAN 130. In response, the first PC 200 a may discover the first phone 300 a as an authorized PAN device, and may establish a first PAN communication session between the first PC and the first phone over PAN 140 a. A request may then be transmitted to the second phone 300 b over the established voice call (over WAN 130) to establish the data communication session between the first and second PCs 200, and in response, the second phone may discover the second PC 200 b as an authorized PAN device from the second phone. A second PAN communication session may thus be established between the second phone 300 b and the second PC 200 b (e.g., over PAN 140 b), and data may be exchanged between the first and second PCs using the first and second PAN communication sessions and the established voice call. Accordingly, the first and second PCs use local (PAN) communication sessions to leverage the existing voice call to communicate data (e.g., on a separate channel than that which carries the voice call), such as where there is no other network connection between the first and second PCs.
Operationally, two users may establish a voice call between a first phone 300 a (e.g., a first user) and a second phone 300 b (e.g., a second user) over a WAN 130. Any type of conventional phone/voice conversation may be established in accordance with one or more embodiments described herein, such that the voice call is also capable of carrying/transmitting data over the WAN 130 communication media (e.g., using WAN protocol services 344). For instance, second generation (2G) cellular phone technologies such as GSM (a Global System for Mobile Communications) and CDMA (Code Division Multiplex Access) may be configured to transport data in addition to voice. Third generation (3G) or fourth generation (4G) cellular technologies, on the other hand, may be more adaptable for use with the embodiments described herein, as may be appreciated by those skilled in the art, particularly due to their higher transfer rates, etc. Also, in addition to cellular technologies, other conventional voice call mediums may be used, such as satellite, RF, land-based, VoIP, etc. Notably, the phones 300 a and 300 b need not be of the same type (e.g., one cellular and one satellite, or one cellular and one land-based, etc., as described herein). Accordingly, WAN 130 may represent a single communication network (e.g., cellular), or a combination of communication networks, such as providing connectivity between a first cellular phone to a second land-based phone, etc. Further, connectivity between multiple service providers (SPs) of the two phones may also be represented by the WAN 130, as will be appreciated by those skilled in the art.
Illustratively, during the established voice call, the first user may wish to share data/information with the second user on respective first and second PCs 200 local to each of the users. As mentioned above, there may be situations where at least one of the PCs 200 is not currently connected to a communication network (e.g., conventional wired/wireless LAN/WAN networks), or where it is inconvenient/inefficient to use a conventional communication network. In accordance with one or more embodiments described herein, the first user may “trigger” the first PC 200 a to establish a data communication session with the second PC 200 b, such as through a GUI, CLI, etc. in cooperating conjunction/relation with a client application 248. For example, the client application 248 may be a dedicated program/process for establishing the data communication session with the second PC, or may be a feature of another program/process, such as a tool for use within a presentation program or word processing program, etc.
In response, to receiving the trigger, the first PC discovers the first phone 300 a as an authorized PAN device. In other words, the first PC 200 a may utilize PAN protocol/services 246 to search for local devices on PAN network 140 a (using interface 212), and may locate the first phone 300 a through the PAN protocol/services 346 of the phone (e.g., a Bluetooth® connection, as will be understood by those skilled in the art). Note that the first user may be required to authorize/accept the first phone and/or first PC as an authorized PAN device from the first PC and/or phone, respectively, such as through an authorization prompt (e.g., on a CLI/GUI). Also, since there may be other PAN-enabled phones within proximity to the first PC 200 a, the first PC may be configured to select a pre-authorized phone 300 a (that is, the first user's phone), or may provide a list of available phones for selection by the user. Once the first PC 200 a and first phone 300 a have agreed to communicate (e.g., have authorized each other), the first PC and phone may establish a first PAN communication session 140 a, accordingly. Alternatively, the first PAN communication session may be established by the first PC simply sending a message 150 to the first phone using PAN communication protocols, i.e., no initial authorization. (Note that in the event a PAN communication session 140 a previously exists between the first PC 200 a and first phone 300 a, the trigger may cause the first PC to discover/utilize that previously established session 140 a, accordingly.)
Once the first PAN communication session 140 a is established, the first phone 300 a (or, alternatively, the first PC 200 a through the first phone) may transmit a request to the second phone 300 b over the established voice call (over WAN 130) to establish a data communication session between the first and second PCs. In other words, in one embodiment, the first phone 300 a utilizes its PAN/WAN exchange services 345 to dynamically determine that the request is to be sent to the second phone 300 b (i.e., that with which a current voice call is in progress) in response to establishing the first PAN communication session. Also, in another embodiment, the first PC (e.g., utilizing client application 248 and/or PAN protocol/services 246) may generate the request for the second phone, and may forward the request to the first phone 300 a to be passed over WAN 130 to the second phone 300 b. (Note also that where the first PAN session is simply sending and receiving a message 150, the transmitted request may be the message 150 forwarded over WAN 130 to the second phone 300 b.)
In response to receiving the request, the second phone 300 b may attempt to discover the second PC 200 b as an authorized PAN device. For example, in a similar manner as described above, the second phone 300 b may utilize PAN protocol/services 346 to search for local devices on a PAN network 140 b (using interface 312), and may locate the second PC 200 b through the PAN protocol/services 246 of the PC (e.g., a second Bluetooth® connection. In this instance, as above, the second user may be required to authorize/accept the second PC and/or second phone as an authorized PAN device from the second phone and/or PC, respectively, such as through an authorization prompt (e.g., on a CLI/GUI for the second user). Also, since there may be other PAN-enabled PCs within proximity to the second phone 300 b, the second phone may be configured to select a pre-authorized PC 200 b (that is, the second user's PC), or may provide a list of available PCs for selection by the user. Once the second phone 300 b and second PC 200 b have agreed to communicate (e.g., have authorized each other), the second phone and PC may establish a second PAN communication session 140 b, accordingly. Alternatively, again, the second PAN communication session may be established by the second phone simply forwarding the received message 150 to the second PC using PAN communication protocols, i.e., with no initial authorization. (Note, again, that in the event a PAN communication session 140 b previously exists between the second phone 300 b and second PC 200 b, the received request may cause the second phone to discover/utilize that previously established session 140 b, accordingly.)
With the first and second PAN communication sessions established (140 a and 140 b), as well as the established voice call (over WAN 130), the first and second PCs 200 may exchange data, accordingly. In other words, the first PC 200 a may send data 150 over the first PAN communication session 140 a to the first phone 300 a. The first phone may then send the data through the established voice call (WAN 130) to the second phone 300 b, which transmits the data 150 over the second PAN communication session 140 b to the second PC 200 b. Illustratively, the established voice call may utilize a first communication path (channel) through the WAN 130 (e.g., a set path of network nodes/links). In one embodiment, the exchanged data 150 between the first and second PCs may also utilize that same first communication path (channel) through the WAN. However, in an alternate embodiment, a second communication path (channel) through the WAN 130 between the first and second phones may be used for the exchanged data 150 between the first and second PCs that is different from the first communication path. That is, the voice call and the data 150 may traverse different paths through the WAN, but both originate and terminate on the first and second phones 300 a and 300 b (such as for voice-sensitive packets versus standard data packets, as will be appreciated by those skilled in the art). Notably, the exchange of data should be substantially inaudible during the established voice call.
Accordingly, the one or more embodiments of the present disclosure permit users to facilitate a collaboration/communication session from their PCs when in an active voice call on their mobile devices (e.g., phones) without a hardwired or wireless connection to a network from their PC (other than the PAN session, that is). In particular, the initiator's PC 200 a (client application 248) invokes a data communication stream that leverages the voice call from the initiator's phone 300 a to be the conduit of communications to the receiver. The receiver's phone 300 b receives the communications and dynamically forwards the received messages/data 150 to the receiver's PC 200 b to “pop” the desired shared application/document (e.g., open/display the data on the receiver's PC), thus terminating the communication on the remote PC 200 b. In this manner, the ad-hoc data communication network is based on the voice call's connectivity between the first and second phones 300. As such, the communication session between the PCs is established and maintained without (necessary) knowledge by each PC as to the destination or address of the respective remote PC. In other words, the first PC 200 a shares a localized PAN session with the first phone 300 a, and the voice call carries the exchanged data between the first phone and second phone 300 b wherever the second phone may be (i.e., a concern of the established voice call and associated SPs). The second phone 300 b shares the data with the local second PC over its PAN session, not (necessarily) according to an address of the second PC as provided by the first PC, but rather based on the fact that the second PC is located in the same PAN session (PAN 140 b).
As an example of an ad-hoc communications session over an established voice call, assume that the first user on the first phone 300 a communicates with a second user and a respective second phone 300 b. If the first user wishes to send a document (e.g., illustratively as message 150) from the first PC 200 a to the second user's second PC 200 b, the first user may initiate a trigger at the first PC to send the document 150 to the second user using the ad-hoc communications session described herein (e.g., a “click-to-share” trigger). The data to be exchanged may be encoded by the first PC as images, videos, executable programs, files, raw data, etc. For instance, in this example, the document 150 is a file that the first PC is to send to the second PC, however, the first PC may further encode the document (data) 150 for the data exchange in a format suitable for transmission over the communication session, such as a video of the document as shown on the first PC (e.g., a portion of the first PC's display to be shared between the first and second PCs). Notably, a video stream may be used so that the second PC 200 b need not have an application necessary to view the data (e.g., the document) itself, but only an application (248) to view the exchanged video. For example, the video may be encoded in an H.264/SVC (Scalable Video Coding) or MPEG-4 format (as will be understood by those skilled in the art), and may be transmitted to the first phone 300 a using a communication protocol over the first PAN session (140 a).
An illustrative protocol that may be used to “stream” the video from the first PC 200 a to the first phone 300 a is the known SMIL (synchronized multimedia integration language) protocol. The SMIL protocol is an open source communication protocol for PAN networks (e.g., PC-to-phone) that is designed for rich media (images, audio, video, rich text, etc.) and is compatible with MMS (Multimedia Message Service, not just text as in the Short Message Service or “SMS”). For example, the first and second phones 300 may communicate the data 150 over the established voice call using MMS messages, as will be appreciated by those skilled in the art. That is, the PAN/WAN exchange 345 on the first phone 300 a may take SMIL requests/messages 150, and sends them to the second phone 300 b using MMS messages. Since the voice call is already in progress, the phones can gain the destination information for the MMS messages, accordingly. The second phone 300 b receives the MMS messages (150), and PAN/WAN exchange 345 extracts the SMIL stream and forwards it over PAN 140 b to the second PC 200 b. The corresponding application on the second PC 200 b (e.g., PAN services 246 and/or a specific client application 248) may then decode the SMIL stream and display the sender's content on the second PC. In this manner, the established voice call remains (is not “dropped”), and data may be transmitted between the first and second PCs. Particularly, data and voice may be transmitted simultaneously, with data inaudibly layered onto the existing voice communications stream.
Notably, while the embodiments mentioned above describe both PCs as not being interconnected with a communication network (that is, via a connection other than through a respective PAN communication session 140 with either the first or second phone), one or more other embodiments may also utilize the techniques described herein. For instance, at least one of the first and second phones 300 may be embodied as a smartphone having both the respective PC (e.g., 200 b) and phone (e.g., 300 b) on a single device. In this scenario, the respective PAN communication session (e.g., 140 b) may be localized to the single device, i.e., both receiving voice-encapsulated data 150 (e.g., MMS data), and converting it to a displayable format (e.g., either through the SMIL protocol or direct to a display application 248 on the smartphone). Also, one or the other of either the phone-to-WAN connections or the PAN sessions 140 may be hardwired as opposed to wireless/mobile. For instance, if the second phone 300 b is hardwired to an access point of the WAN 130 (e.g., a desk/house phone), it may still have PAN services 346 and the associated capability to communicate with an aptly equipped second PC 200 b. Also, one of the first or second PAN communication sessions may be a hardwired session, such as where a phone 300 and respective PC 200 are hardwired to each other (e.g., using various hardwire communication media and protocols), yet the phone still utilizes the established voice call to transmit the data 150. (Note that either of the respective first and second pairs of phones/PCs may be wired and/or wireless, accordingly.)
FIG. 4 illustrates an example procedure for enabling ad-hoc data communication over established mobile voice communications in accordance with one or more embodiments described herein. The procedure 400 starts at step 405, and continues to step 410, where a voice call is established between a first phone (e.g., 300 a) and second phone (e.g., 300 b) over a WAN (e.g., 130). For instance, an illustrative embodiment described above utilizes two mobile (e.g., cellular) phones 300 over a cellular WAN 130. At step 415, a trigger may be received at a first PC (e.g., 200 a, such as a first user's laptop) to establish a data communication session with a second PC (e.g., 200 b, such as a second user's laptop). The first PC 200 a then discovers the first phone 300 a as an authorized PAN device in step 420 over PAN 140 a, for example, through a discovery communication protocol, such as Bluetooth®. A first PAN communication session may be established in step 425 in response to the discovered device between the first PC and the first phone. Illustratively, an authorization request may be prompted from a user in step 430 for the PAN communication session, e.g., for security.
In step 435, a request is transmitted to the second phone 300 b over the established voice call (e.g., by the first phone 300 a or the first PC 200 a via the first phone, as mentioned above) to establish the data communication session between the first and second PC (e.g., over WAN 130). The second phone receives the request in step 440, and may dynamically discover the second PC 200 b as an authorized PAN device in step 445 over PAN 140 b. Upon discovery, the second phone and second PC may establish a shared second PAN communication session in step 450 (again, optionally prompting a second user for authorization in step 455). Once the second PAN communication session is established, the first and second PCs may exchange data (e.g., respectively encoding and decoding data/messages 150) in step 460 using the first and second PAN communication sessions and the established voice call (e.g., over WAN 130). For example, in a manner described above, the first PC 200 a may encode a video stream to be transmitted over the ad-hoc communication sessions (first and second PANs along with the established voice call), and the second PC 200 b may receive the encoded video stream, and may decode the content accordingly. The procedure 400 ends in step 495.
Notably, while the embodiments shown and described above reference first and second PAN communication sessions 140 being utilized between the two phones 300 and two PCs, the disclosure is not limited to dual PAN communication sessions. For example, a single PAN communication session (e.g., 140 a) may be utilized in accordance with one or more alternative embodiments. FIG. 5 illustrates an example network 500 that is similar to network 100 of FIG. 1 above, however instead of two PAN communication sessions 140, the second phone/PC communication sessions (WAN connectivity as well as PAN communication session 140 b) is configured in a different manner. In particular, interconnected with the WAN 130 is a conversion device 510, which may be used to direct or “route” traffic from the WAN to appropriate devices, such as both phones 300 and PCs 200. For instance, the first phone 300 a may transmit a request to wired phone 300 b of network 500 over the established voice call to establish the data communication session between the first and second PCs. In this situation, however, the conversion device 510 (e.g., within the WAN 130) intercepts the request, and determines the second PC 200 b that is associated with the wired phone. For example, based on a configured listing of phone-to-PC associations 515 (e.g., manually and/or dynamically configured), the conversion device may be aware of an association between particular phones 300 of the network 500 and particular PCs 200, such as a particular office phone to a PC in that office. Accordingly, upon receiving the request, the conversion device may establish a wired communication session with the appropriate second PC 200 b based on the associated phone 300 b of the established voice call. In this manner, data 150 may be exchanged between the first and second PCs using the first wireless PAN session 140 a and the established voice call, where the conversion device 510 directs the voice call to the wired phone 300 b and the exchanged data to the second PC 200 b.
For instance, returning to FIG. 4, procedure 400 may continue from step 435 to step 470 (that is, instead of step 440), where a conversion device 510 intercepts the request to establish a data communication session between the first and second PCs (e.g., over WAN 130). In step 475, the conversion device 510 associates the second PC 200 b with the second phone 300 b, such as through various configured lists/tables 515, and establishes a communication session with the second PC in step 480. Once this communication session is established, the first and second PCs may exchange data in step 485 (e.g., respectively encoding and decoding data/message 150) using the first PAN communication session and established voice call. In particular, the conversion device 510 receives voice traffic and data traffic, and directs the voice call to the second phone 300 b and the data to the second PC 200 b, accordingly, and the procedure 400 ends in step 495.
Advantageously, the novel techniques described herein enable ad-hoc data communication over established mobile voice communications in a computer network. By allowing two remote PCs to communicate over an established voice call through dynamically established PAN communication sessions with the phones at either end of the voice call, the novel techniques allow for peer-to-peer communications between the PCs using generally standard mobile device and PC hardware/software components (e.g., Bluetooth® and cellular networks), e.g., where conventional connections to communication networks are unavailable or otherwise inconvenient to access. In particular, the techniques described above may utilize any standards-based network as either PAN communication session and for the voice call, allowing a wide range of connectivity for appropriately configured devices. Also, the dynamic aspects of one or more embodiments described herein alleviate the need for cumbersome and inefficient manual configuration.
While there have been shown and described illustrative embodiments that enable ad-hoc data communication over established mobile voice communications in a computer network, it is to be understood that various other adaptations and modifications may be made within the spirit and scope of the present invention. For example, the embodiments have been shown and described herein using particular protocols for the voice call (and WAN), PAN communication sessions, and the exchange of data/messages. However, the embodiments of the invention in their broader sense are not so limited, and may, in fact, be used with other protocols not explicitly mentioned herein, but that may be suitable for use in accordance with the techniques as described in the present disclosure. For instance, while the data exchange between the first and second PCs is illustratively a bi-directional exchange, a one-way exchange (e.g., from the first/initiating PC to the second PC, or vice versa) may be utilized.
The foregoing description has been directed to specific embodiments of this invention. It will be apparent, however, that other variations and modifications may be made to the described embodiments, with the attainment of some or all of their advantages. For instance, it is expressly contemplated that the components and/or elements described herein can be implemented as software, including a computer-readable medium having program instructions executing on a computer, hardware, firmware, or a combination thereof. Also, electromagnetic signals may be generated to carry computer executable instructions that implement aspects of the present invention over, e.g., a wireless data link or a data network, such as the Internet. Accordingly this description is to be taken only by way of example and not to otherwise limit the scope of the invention. Therefore, it is the object of the appended claims to cover all such variations and modifications as come within the true spirit and scope of the invention.

Claims (22)

What is claimed is:
1. A method, comprising:
establishing a voice call between first and second phones over a wide area network (WAN);
receiving a trigger at a first computer to establish a data communication session with a second computer, wherein at least one of the first and second computers lack access to a network for direct communication between the first and second computers over the network;
discovering the first phone as a first authorized network device from the first computer in response to the received trigger;
establishing a first network communication session between the first computer and the first phone to provide the first computer access to the established voice call on the WAN;
transmitting a request to the second phone over the established voice call to establish the data communication session between the first and second computers;
in response to receiving the request, discovering the second computer as a second authorized network device from the second phone;
establishing a second network communication session between the second phone and the second computer to provide the second computer access to the established voice call on the WAN; and
exchanging data over the WAN between the first and second computers using the first and second network communication sessions and the established voice call; and
wherein the first and second phones are mobile or cellular phones.
2. The method as in claim 1, wherein the network devices are personal area network (PAN) devices and network communication sessions are PAN communication sessions.
3. The method as in claim 1, wherein at least one of the first and second network communication sessions is a wireless session.
4. The method as in claim 3, further comprising:
selecting the wireless session from the group consisting of: wireless local area network (WLAN) sessions, and wireless fidelity (Wi-Fi) sessions.
5. The method as in claim 1, wherein at least one of the first and second phones is a wireless phone selected from the group consisting of: cellular phones, satellite phones, and radio frequency (RF) phones.
6. The method as in claim 1, wherein at least one of the first and second network communication sessions is a hardwired session.
7. The method as in claim 1, wherein at least one of the first and second phones is hardwired to an access point of the WAN.
8. The method as in claim 1, further comprising:
utilizing a first communication path through the WAN for the established voice call.
9. The method as in claim 8, further comprising:
utilizing the first communication path through the WAN for the exchanged data between the first and second computers.
10. The method as in claim 1, wherein at least one of the first and second computers is not interconnected with a communication network via a connection other than through a respective network communication session with either the first or second phone.
11. The method as in claim 1, wherein only one of the first and second phones is a smartphone having both the respective computer and phone on a single device, wherein the respective network communication session is localized to the single device.
12. The method as in claim 1, wherein the established voice call is a voice over internet protocol (VoIP) call.
13. The method as in claim 1, further comprising:
encoding data for the data exchange at the first computer in a format selected from the group consisting of: images, videos, executable programs, files, and raw data.
14. The method as in claim 1, wherein the data exchange between the first and second computers is a one-way data exchange from the first computer to the second computer.
15. The method as in claim 1, further comprising:
prompting a user for authorization of at least one of either the first or second network communication sessions.
16. The method as in claim 15, wherein prompting is performed on at least one of either a phone or computer corresponding to the user.
17. The method as in claim 1, wherein the computers are personal computers (PCs).
18. A system, comprising:
a wide area network (WAN);
a first and second phone configured to have an established voice call between the first and second phones over the WAN;
a first computer configured to:
i) receive a trigger to establish a data communication session with a second computer, wherein at least one of the first and second computers lack access to a network for direct communication between the first and second computers over the network,
ii) discover the first phone as a first authorized network device from the first computer in response to the received trigger,
iii) establish a first network communication session between the first computer and the first phone to provide the first computer access to the established voice call on the WAN, and
iv) transmit a request to the second phone over the established voice call to establish the data communication session between the first and second computers;
a second computer configured to:
i) receive the request,
ii) discover the second computer as a second authorized network device from the second phone in response to the request, and
iii) establish a second network communication session between the second phone and the second computer to provide the second computer access to the established voice call on the WAN;
and wherein the first and second computers are further configured to exchange data over the WAN between the first and second computers using the first and second network communication sessions and the established voice call; and
wherein the first and second phones are mobile or cellular phones.
19. A method, comprising:
establishing a voice call between a wireless phone and a wired phone over a wide area network (WAN);
receiving a trigger at a first computer to establish a data communication session with a second computer, wherein at least one of the first and second computers lack access to a network for direct communication between the first and second computers over the network;
discovering the wireless phone as a first authorized network device from the first computer in response to the received trigger;
establishing a first network communication session between the first computer and the wireless phone to provide the first computer access to the established voice call on the WAN;
transmitting a request to the second phone over the established voice call to establish the data communication session between the first and second computers;
intercepting the request at a conversion device;
determining, by the conversion device, the second computer associated with the wired phone;
establishing a wired communication session between the conversion device and the second computer; and
exchanging data over WAN between the first and second computers using the wireless network communication session and the established voice call, wherein the conversion device directs the voice call to the wired phone and the exchanged data to the second computer; and
wherein the wireless phone is a mobile or cellular phone.
20. The method as in claim 19, wherein at least one of the first and second computers is not interconnected with a communication network via a connection other than through a respective network communication session with either the first or second phone.
21. The method as in claim 19, wherein only one of the first and second phones is a smartphone having both the respective computer and phone on a single device, wherein the respective network communication session is localized to the single device.
22. The method as in claim 19, further comprising:
encoding data for the data exchange at the first computer in a format selected from the group consisting of: images, videos, executable programs, files, and raw data.
US11/944,944 2007-11-26 2007-11-26 Enabling AD-HOC data communication over established mobile voice communications Expired - Fee Related US8934476B2 (en)

Priority Applications (2)

Application Number Priority Date Filing Date Title
US11/944,944 US8934476B2 (en) 2007-11-26 2007-11-26 Enabling AD-HOC data communication over established mobile voice communications
US14/553,013 US9736315B2 (en) 2007-11-26 2014-11-25 Enabling ad-hoc data communication over established mobile voice communications

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
US11/944,944 US8934476B2 (en) 2007-11-26 2007-11-26 Enabling AD-HOC data communication over established mobile voice communications

Related Child Applications (1)

Application Number Title Priority Date Filing Date
US14/553,013 Continuation US9736315B2 (en) 2007-11-26 2014-11-25 Enabling ad-hoc data communication over established mobile voice communications

Publications (2)

Publication Number Publication Date
US20090135806A1 US20090135806A1 (en) 2009-05-28
US8934476B2 true US8934476B2 (en) 2015-01-13

Family

ID=40669627

Family Applications (2)

Application Number Title Priority Date Filing Date
US11/944,944 Expired - Fee Related US8934476B2 (en) 2007-11-26 2007-11-26 Enabling AD-HOC data communication over established mobile voice communications
US14/553,013 Active 2028-09-07 US9736315B2 (en) 2007-11-26 2014-11-25 Enabling ad-hoc data communication over established mobile voice communications

Family Applications After (1)

Application Number Title Priority Date Filing Date
US14/553,013 Active 2028-09-07 US9736315B2 (en) 2007-11-26 2014-11-25 Enabling ad-hoc data communication over established mobile voice communications

Country Status (1)

Country Link
US (2) US8934476B2 (en)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20120045046A1 (en) * 2010-08-20 2012-02-23 Dany Sylvain Method for augmenting a voice call
US20150078374A1 (en) * 2007-11-26 2015-03-19 Cisco Technology, Inc. Enabling Ad-Hoc Data Communication Over Established Mobile Voice Communications

Families Citing this family (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20090161843A1 (en) * 2007-12-19 2009-06-25 Nortel Networks Limited Delayed multimedia session
US8756283B2 (en) * 2007-12-19 2014-06-17 Rockstar Consortium USLP Integrated web portal for facilitating communications with an intended party
US7911970B2 (en) * 2009-02-02 2011-03-22 Harvey Timothy J Systems and methods for presenting electronic communication packets using a logic analyzer
US8818350B2 (en) * 2010-06-21 2014-08-26 Microsoft Corporation Context-driven data sharing
US8995630B1 (en) 2010-08-01 2015-03-31 Tulsa Holdings, Llc Telephony and applications communication in a non-mobile telephone system
KR20120083827A (en) 2011-01-18 2012-07-26 삼성전자주식회사 Method and apparatus for telephone call using a hoe network
CN103748855B (en) * 2011-08-22 2018-08-17 三星电子株式会社 The device and method for establishing parallel calls session are constructed based on 3 boxes
US20130179507A1 (en) * 2012-01-06 2013-07-11 Microsoft Corporation Communicating Media Data
US20130227149A1 (en) * 2012-02-24 2013-08-29 Intel Mobile Communications GmbH Method for providing a communication session and device
CN107276656B (en) 2013-02-22 2021-04-13 欧希亚有限公司 Non-communication system and method
US10476968B2 (en) 2014-04-01 2019-11-12 Microsoft Technology Licensing, Llc Providing a shared user experience of facilitate communication
CN110476397B (en) * 2017-04-01 2021-01-05 华为技术有限公司 User authentication method and device
US11140203B1 (en) * 2020-10-06 2021-10-05 Slack Technologies, Llc Ambient, ad hoc, multimedia collaboration in a group-based communication system

Citations (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7003298B1 (en) 2002-02-28 2006-02-21 Cisco Technology, Inc. Devices, softwares and methods for handing off live calls between legs of CSV and VOX modalities
US20060140151A1 (en) 2001-07-18 2006-06-29 Cisco Technology, Inc. A California Corporation Method and system for providing wireless-specific services for a wireless access network
US20060232677A1 (en) 2005-04-18 2006-10-19 Cisco Technology, Inc. Video surveillance data network
US20060245399A1 (en) 2002-11-18 2006-11-02 Cisco Technology, Inc. Method and system for service portability across disjoint wireless networks
US7209978B2 (en) 2002-12-13 2007-04-24 Cisco Technology, Inc. Arrangement in a router of a mobile network for optimizing use of messages carrying reverse routing headers
US7221750B2 (en) 2002-05-24 2007-05-22 Cisco Technology, Inc. Intelligent association of nodes with pan coordinator
US20080031231A1 (en) * 2006-08-03 2008-02-07 Bluenote Networks, Inc. System and method for handling media streams
US20090132816A1 (en) * 2007-11-15 2009-05-21 Lockheed Martin Corporation PC on USB drive or cell phone
US20100229229A1 (en) * 2006-02-06 2010-09-09 Matsushita Electric Industrial Co., Ltd. Method, system and apparatus for indirect access by communication device

Family Cites Families (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7031268B1 (en) * 2000-05-17 2006-04-18 Cisco Technology, Inc. Call optimization in ad-hoc conference calls
US7912199B2 (en) * 2002-11-25 2011-03-22 Telesector Resources Group, Inc. Methods and systems for remote cell establishment
US8102901B2 (en) * 2005-03-01 2012-01-24 Intel Corporation Techniques to manage wireless connections
TW200737910A (en) * 2006-03-27 2007-10-01 F3 Inc Switching method between VoIP phone and traditional phone
US8150014B2 (en) * 2006-04-11 2012-04-03 Alcatel Lucent System and method for transitioning a voice session in progress over a communication network into a voice and data session
US20070268838A1 (en) * 2006-05-16 2007-11-22 Cisco Technology, Inc. System and Method For Facilitating An Internet Protocol Based Personal Area Network
US8934476B2 (en) * 2007-11-26 2015-01-13 Cisco Technology, Inc. Enabling AD-HOC data communication over established mobile voice communications

Patent Citations (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20060140151A1 (en) 2001-07-18 2006-06-29 Cisco Technology, Inc. A California Corporation Method and system for providing wireless-specific services for a wireless access network
US7003298B1 (en) 2002-02-28 2006-02-21 Cisco Technology, Inc. Devices, softwares and methods for handing off live calls between legs of CSV and VOX modalities
US7221750B2 (en) 2002-05-24 2007-05-22 Cisco Technology, Inc. Intelligent association of nodes with pan coordinator
US20060245399A1 (en) 2002-11-18 2006-11-02 Cisco Technology, Inc. Method and system for service portability across disjoint wireless networks
US7209978B2 (en) 2002-12-13 2007-04-24 Cisco Technology, Inc. Arrangement in a router of a mobile network for optimizing use of messages carrying reverse routing headers
US20060232677A1 (en) 2005-04-18 2006-10-19 Cisco Technology, Inc. Video surveillance data network
US20100229229A1 (en) * 2006-02-06 2010-09-09 Matsushita Electric Industrial Co., Ltd. Method, system and apparatus for indirect access by communication device
US20080031231A1 (en) * 2006-08-03 2008-02-07 Bluenote Networks, Inc. System and method for handling media streams
US20090132816A1 (en) * 2007-11-15 2009-05-21 Lockheed Martin Corporation PC on USB drive or cell phone

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20150078374A1 (en) * 2007-11-26 2015-03-19 Cisco Technology, Inc. Enabling Ad-Hoc Data Communication Over Established Mobile Voice Communications
US9736315B2 (en) * 2007-11-26 2017-08-15 Cisco Technology, Inc. Enabling ad-hoc data communication over established mobile voice communications
US20120045046A1 (en) * 2010-08-20 2012-02-23 Dany Sylvain Method for augmenting a voice call
US9237239B2 (en) * 2010-08-20 2016-01-12 Genband Us Llc Method for augmenting a voice call

Also Published As

Publication number Publication date
US9736315B2 (en) 2017-08-15
US20150078374A1 (en) 2015-03-19
US20090135806A1 (en) 2009-05-28

Similar Documents

Publication Publication Date Title
US9736315B2 (en) Enabling ad-hoc data communication over established mobile voice communications
EP3292675B1 (en) Establishing media paths in real time communications
EP2124399B1 (en) A method, a device and a system for converging ip message
US10069719B2 (en) Method and apparatus for multipath media delivery
EP2663054B1 (en) Methods and systems of advanced real-time IP communication in a mobile terminal
US10798138B2 (en) Instant calling method, apparatus and system
US7830894B2 (en) Communications
US20090161590A1 (en) Multicast data stream selection in a communication system
US8948165B2 (en) IP telephony on a home network device
KR102115922B1 (en) Video communication system and method thereof
EP2779579B1 (en) Method and apparatuses for realizing voip call in cloud computing environment
CN111566997A (en) Network slicing usage
WO2011017982A1 (en) System, method and terminal for processing media services
EP1830522A1 (en) Bridging end point device supporting inter access point communication
US20150327074A1 (en) System and Method for Facilitating Secure Voice Communication over a Network
US9735981B2 (en) Facilitation of session initiation protocol trunking
JP5211899B2 (en) IP telephone system, local call control server, IP telephone terminal, and communication method
KR20170034016A (en) Apparatus and method for transmitting of message reception information in wireless communication system
JP6119220B2 (en) Media communication apparatus and media communication system
US8638716B1 (en) System and method for facilitating secure voice communication over a network
Islam DT-talkie: Push-to-talk in challenged networks
Deininger et al. Communication networks
JP2011182033A (en) Call control system for network
US20100081415A1 (en) Methods and arrangement for supporting multiple calls with a single carrier connection

Legal Events

Date Code Title Description
AS Assignment

Owner name: CISCO TECHNOLOGY, INC., CALIFORNIA

Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNOR:PULHUG, HAROLD JAMES;REEL/FRAME:020153/0416

Effective date: 20071126

STCF Information on status: patent grant

Free format text: PATENTED CASE

MAFP Maintenance fee payment

Free format text: PAYMENT OF MAINTENANCE FEE, 4TH YEAR, LARGE ENTITY (ORIGINAL EVENT CODE: M1551)

Year of fee payment: 4

FEPP Fee payment procedure

Free format text: MAINTENANCE FEE REMINDER MAILED (ORIGINAL EVENT CODE: REM.); ENTITY STATUS OF PATENT OWNER: LARGE ENTITY

LAPS Lapse for failure to pay maintenance fees

Free format text: PATENT EXPIRED FOR FAILURE TO PAY MAINTENANCE FEES (ORIGINAL EVENT CODE: EXP.); ENTITY STATUS OF PATENT OWNER: LARGE ENTITY

STCH Information on status: patent discontinuation

Free format text: PATENT EXPIRED DUE TO NONPAYMENT OF MAINTENANCE FEES UNDER 37 CFR 1.362

FP Lapsed due to failure to pay maintenance fee

Effective date: 20230113