Bonding of Multiple Concurrent Data Streams Among Multiple Devices
Examples are disclosed for hosting a communication session between a computer device and a destination communication device in an Internet Protocol (IP) based packet data network. A computer device receives multiple concurrent IP packet data streams each representative of the same content but received over corresponding multiple communication links. The original IP packet data stream comes from the communications server. At least one IP packet data stream representative of the original IP packet data stream traverses a communication link through a second communication device working in tandem with the communications server before arriving at the computer device. The computer device determines a packet arrival time for each corresponding packet in the multiple concurrent IP packet data streams. The computer device then creates a bonded IP packet data stream by selecting the first to arrive packet for each time slot from among corresponding time slots of the multiple concurrent IP packet data streams.
1 . A method comprising:
in a computer device communicable with a communications server and a communication device, the communications server situated in an Internet Protocol (IP) based packet data network:
receiving multiple concurrent IP packet data streams each IP packet data stream representative of the same content received over corresponding multiple communication links, wherein an original IP packet data stream comes from the communications server and at least one IP packet data stream representative of the original IP packet data stream traverses a communication link through the communication device before arriving at the computer device;
determining a first to arrive packet in each time slot from among corresponding time slots of the multiple concurrent IP packet data streams; and
creating a bonded IP packet data stream by selecting the first to arrive packet for each time slot from among corresponding time slots of the multiple concurrent IP packet data streams.
2 . The method of claim 1 , the one or more communication links comprising one or more of an Ethernet communication link, an 802.11 WiFi network communication link, a cellular IP data communication link, an 802.16 WiMax network communication link, a wireless network communication link operating within a frequency range of 100 MHz and 700 MHz, a wireless network communication link operating within a frequency range of 3.5 GHz and 3.7 GHz a wireless network communication link operating at or above 35 GHz.
3 . The method of claim 2 , the cellular IP data communication link utilizing a protocol based on one of a General Packet Radio Service (GPRS), Enhanced Data for GSM Evolution (EDGE), Evolution-Data Optimized (EV-DO), High Speed Packet Data (HSPD), High Speed Downlink Packet Access (HSPDA), Long-Term Evolution (LTE), Voice-over Long-Term Evolution (VoLTE), Wideband Code Division Multiple Access (WCDMA), Universal Mobile Telecommunications System (UMTS), or High Rate Packet Data (HRPD).
4 . The method of claim 3 , a portion of the communication link for the at least one IP packet data stream representative of the original IP packet data stream that traverses a communication link through the communication device before arriving at the computer device comprising a wireless communication link between the computer device and the communication device.
5 . The method of claim 3 , a portion of the communication link for the at least one IP packet data stream representative of the original IP packet data stream that traverses a communication link through the communication device before arriving at the computer device comprising a wired communication link between the computer device and the communication device.
6 . The method of claim 3 , the received multiple concurrent IP packet data streams comprising:
at least on IP packet data stream traversing an Ethernet communication link between the communications server and the computer device.
7 . The method of claim 3 , the received multiple concurrent IP packet data streams comprising:
at least on IP packet data stream traversing an 802.11 WiFi communication link between the communications server and the computer device.
8 . The method of claim 3 , the received multiple concurrent IP packet data streams comprising:
at least on IP packet data stream traversing an 802.11 WiFi communication link between the communications server and the communication device.
9 . The method of claim 3 , the received multiple concurrent IP packet data streams comprising:
at least on IP packet data stream traversing a cellular IP data communication link between the communications server and the communication device.
10 . The method of claim 1 , the IP packet data streams comprising a Voice-over Internet Protocol (VoIP) media stream.
11 . The method of claim 11 , the VoIP media stream comprised of Real-time Transport Protocol (RTP) packets.
12 . A computer device communicable with a communications server and a communication device, the communications server situated in an Internet Protocol (IP) based packet data network, the computer device comprising:
a memory unit for storing code;
at least one processor for executing the stored code to:
receive multiple concurrent IP packet data streams each IP packet data stream representative of the same content received over corresponding multiple communication links, wherein an original IP packet data stream comes from the communications server and at least one IP packet data stream representative of the original IP packet data stream traverses a communication link through the communication device before arriving at the computer device;
determine a first to arrive packet in each time slot from among corresponding time slots of the multiple concurrent IP packet data streams; and
create a bonded IP packet data stream by selecting the first to arrive packet for each time slot from among corresponding time slots of the multiple concurrent IP packet data streams.
13 . The computer device of claim 12 , the one or more communication links comprising one or more of an Ethernet communication link, an 802.11 WiFi network communication link, a cellular IP data communication link, an 802.16 WiMax network communication link, a wireless network communication link operating within a frequency range of 100 MHz and 700 MHz, a wireless network communication link operating within a frequency range of 3.5 GHz and 3.7 GHz a wireless network communication link operating at or above 35 GHz.
14 . The computer device of claim 13 , the cellular IP data communication link utilizing a protocol based on one of a General Packet Radio Service (GPRS), Enhanced Data for GSM Evolution (EDGE), Evolution-Data Optimized (EV-DO), High Speed Packet Data (HSPD), High Speed Downlink Packet Access (HSPDA), Long-Term Evolution (LTE), Voice-over Long-Term Evolution (VoLTE), Wideband Code Division Multiple Access (WCDMA), Universal Mobile Telecommunications System (UMTS), or High Rate Packet Data (HRPD).
15 . The computer device of claim 14 , a portion of the communication link for the at least one IP packet data stream representative of the original IP packet data stream that traverses a communication link through the communication device before arriving at the computer device comprising a wireless communication link between the computer device and the communication device.
16 . The computer device of claim 14 , a portion of the communication link for the at least one IP packet data stream representative of the original IP packet data stream that traverses a communication link through the communication device before arriving at the computer device comprising a wired communication link between the computer device and the communication device.
17 . The computer device of claim 14 , the received multiple concurrent IP packet data streams comprising:
at least on IP packet data stream traversing an Ethernet communication link between the communications server and the computer device.
18 . The computer device of claim 4 , the received multiple concurrent IP packet data streams comprising:
at least on IP packet data stream traversing an 802.11 WiFi communication link between the communications server and the computer device.
19 . The computer device of claim 14 , the received multiple concurrent IP packet data streams comprising:
at least on IP packet data stream traversing an 802.11 WiFi communication link between the communications server and the communication device.
20 . The computer device of claim 14 , the received multiple concurrent IP packet data streams comprising:
at least on IP packet data stream traversing a cellular IP data communication link between the communications server and the communication device.
21 . The computer device of claim 12 , the IP packet data streams comprising a Voice-over Internet Protocol (VoIP) media stream.
22 . The computer device of claim 21 , the VoIP media stream comprised of Real-time Transport Protocol (RTP) packets.