Method and apparatus for peer-to-peer communication
First Claim
1. A method of establishing communication between an originating unit and a receiving unit over a network channel that identifies communicating units by network address, comprising the steps of:
- sending a message from said originating unit to said receiving unit over a monitor channel;
monitoring a monitor channel by said receiving unit;
generating a trigger event in response to at least one of said sending and monitoring steps;
determining information indicative of a first network address associated with at least one of said originating unit and said receiving unit; and
in response to said triggering event, establishing communication between said originating unit and said receiving unit over said network channel using said first network address.
5 Assignments
Litigations
0 Petitions

Accused Products

Abstract
Peer-to-peer communication is established between two remote computing units over a network channel, even though a permanent network address is not known. An originating computer sends a message over a monitor channel, such as a circuit-switched telephone line, to a receiving computer creating a triggering event. In response to the triggering event, either the originating computer or the receiving computer determines a network address associated with either the originating computer or the receiving computer. Then, using the network address, peer-to-peer communication between the originating computer and receiving computer is established over the network channel.
152 Citations
Method and communication unit for communicating between communication apparatuses | ||
Patent #
US 7,913,293 B2
Filed 12/12/2007
|
Current Assignee
Tencent Technology Company Limited
|
Original Assignee
Tencent Technology Company Limited
|
ELECTRONIC APPARATUS WITH ROUTER DEVICE FOR MANAGING CONNECTIONS | ||
Patent #
US 20110078317A1
Filed 12/08/2010
|
Current Assignee
Sony Corporation
|
Original Assignee
Sony Ericsson Mobile Communications
|
METHODS AND APPARATUS FOR PACKETIZED CONTENT DELIVERY OVER A CONTENT DELIVERY NETWORK | ||
Patent #
US 20110107364A1
Filed 05/19/2010
|
Current Assignee
Time Warner Cable Enterprises LLC
|
Original Assignee
Time Warner Cable Enterprises LLC
|
METHODS AND APPARATUS FOR PACKETIZED CONTENT DELIVERY OVER A CONTENT DELIVERY NETWORK | ||
Patent #
US 20110103374A1
Filed 04/21/2010
|
Current Assignee
Time Warner Cable Enterprises LLC
|
Original Assignee
Time Warner Cable Enterprises LLC
|
METHODS AND APPARATUS FOR PACKETIZED CONTENT DELIVERY OVER A CONTENT DELIVERY NETWORK | ||
Patent #
US 20110107379A1
Filed 05/19/2010
|
Current Assignee
Time Warner Cable Enterprises LLC
|
Original Assignee
Time Warner Cable Enterprises LLC
|
APPARATUS AND METHODS FOR MONITORING AND OPTIMIZING DELIVERY OF CONTENT IN A NETWORK | ||
Patent #
US 20110138064A1
Filed 12/04/2009
|
Current Assignee
Time Warner Cable Enterprises LLC
|
Original Assignee
Time Warner Cable Enterprises LLC
|
APPARATUS AND METHODS FOR RIGHTS-MANAGED CONTENT AND DATA DELIVERY | ||
Patent #
US 20110219229A1
Filed 03/02/2010
|
Current Assignee
Time Warner Cable Enterprises LLC
|
Original Assignee
Time Warner Cable Enterprises LLC
|
Direct connections to a plurality of storage object replicas in a computer network | ||
Patent #
US 8,060,619 B1
Filed 11/07/2003
|
Current Assignee
Veritas Technologies LLC
|
Original Assignee
Symantec Operating Corporation
|
IP SESSION-BASED REGULATION AND BILLING | ||
Patent #
US 20100306367A1
Filed 06/02/2009
|
Current Assignee
CenturyLink Intellectual Property LLC
|
Original Assignee
CenturyLink Intellectual Property LLC
|
Communication sessions for a computer network | ||
Patent #
US 7,653,059 B1
Filed 03/31/2003
|
Current Assignee
Clouding Corporation
|
Original Assignee
Symantec Operating Corporation
|
Efficient search for storage objects in a network | ||
Patent #
US 7,680,950 B1
Filed 11/07/2003
|
Current Assignee
Veritas Technologies LLC
|
Original Assignee
Symantec Operating Corporation
|
Method and apparatus for designing electronic circuits using optimization | ||
Patent #
US 7,516,423 B2
Filed 07/13/2004
|
Current Assignee
KIMOTION TECHNOLOGIES
|
Original Assignee
KIMOTION TECHNOLOGIES
|
Input/output (I/O) scanner for a control system with peer determination | ||
Patent #
US 7,519,737 B2
Filed 03/02/2002
|
Current Assignee
Schneider Automation Incorporated
|
Original Assignee
Schneider Automation Incorporated
|
METHOD AND APPARATUS FOR PROVIDING DISASTER RECOVERY USING NETWORK PEERING ARRANGEMENTS | ||
Patent #
US 20090103526A1
Filed 12/23/2008
|
Current Assignee
Hossein Eslambolchi, Marian Croak
|
Original Assignee
Hossein Eslambolchi, Marian Croak
|
Methods, Systems, and Products for Tracking Objects | ||
Patent #
US 20090111484A1
Filed 09/02/2008
|
Current Assignee
BELLSOUTH INTELLECTUAL PROPERTY CORPORATION NOW DOING BUSINESS AS ATT INTELLECTUAL PROPERTY I L.P.
|
Original Assignee
BELLSOUTH INTELLECTUAL PROPERTY CORPORATION NOW DOING BUSINESS AS ATT INTELLECTUAL PROPERTY I L.P.
|
Efficiently linking storage object replicas in a computer network | ||
Patent #
US 7,555,527 B1
Filed 11/07/2003
|
Current Assignee
Veritas Technologies LLC
|
Original Assignee
Symantec Operating Corporation
|
Apparatus and methods for utilizing statistical multiplexing to ensure quality of service in a network | ||
Patent #
US 20090207866A1
Filed 02/19/2008
|
Current Assignee
Time Warner Cable Enterprises LLC
|
Original Assignee
Time Warner Cable Enterprises LLC
|
Overlay network with efficient routing and recovery | ||
Patent #
US 7,570,600 B1
Filed 12/17/2003
|
Current Assignee
Veritas Technologies LLC
|
Original Assignee
Symantec Operating Corporation
|
Detecting and breaking cycles in a computer network | ||
Patent #
US 7,327,741 B1
Filed 12/20/2002
|
Current Assignee
NortonLifeLock Inc.
|
Original Assignee
Symantec Operating Corporation
|
Role-based message addressing for a computer network | ||
Patent #
US 7,406,535 B2
Filed 12/20/2002
|
Current Assignee
Veritas Technologies LLC
|
Original Assignee
Symantec Operating Corporation
|
METHOD AND COMMUNICATION UNIT FOR COMMUNICATING BETWEEN COMMUNICATION APPARATUS | ||
Patent #
US 20080175383A1
Filed 12/12/2007
|
Current Assignee
Tencent Technology Company Limited
|
Original Assignee
Tencent Technology Company Limited
|
Publishing a network address in a computer network | ||
Patent #
US 7,404,006 B1
Filed 03/31/2003
|
Current Assignee
Veritas Technologies LLC
|
Original Assignee
Symantec Operating Corporation
|
Methods and apparatus for content delivery and replacement in a network | ||
Patent #
US 20080235746A1
Filed 03/20/2007
|
Current Assignee
Time Warner Cable Enterprises LLC
|
Original Assignee
Time Warner Cable Enterprises LLC
|
Method and System for Real-Time Insertion of Services During a Call Session Over a Communication Network | ||
Patent #
US 20080253545A1
Filed 06/23/2008
|
Current Assignee
Cisco Technology Incorporated
|
Original Assignee
Cisco Technology Incorporated
|
Re-mapping a location-independent address in a computer network | ||
Patent #
US 7,467,194 B1
Filed 06/30/2003
|
Current Assignee
Clouding Corporation
|
Original Assignee
Symantec Operating Corporation
|
Registration of peer-to-peer services | ||
Patent #
US 20070226338A1
Filed 03/23/2006
|
Current Assignee
EMC Corporation
|
Original Assignee
Novell Incorporated
|
Instantaneous mobile access to all pertinent life events | ||
Patent #
US 7,274,295 B2
Filed 05/05/2005
|
Current Assignee
Bellsouth Intellectual Property Corporation
|
Original Assignee
ATT Intellectual Property I LP
|
System and method for storing and utilizing routing information in a computer network | ||
Patent #
US 7,292,585 B1
Filed 03/31/2003
|
Current Assignee
Clouding Corporation
|
Original Assignee
Symantec Operating Corporation
|
Method and apparatus for designing electronic circuits using optimization | ||
Patent #
US 20060015829A1
Filed 07/13/2004
|
Current Assignee
KIMOTION TECHNOLOGIES
|
Original Assignee
KIMOTION TECHNOLOGIES
|
Multimedia conference system and method which enables communication between private network and Internet | ||
Patent #
US 20060203749A1
Filed 07/27/2005
|
Current Assignee
Plustek Incorporated
|
Original Assignee
Plustek Incorporated
|
Method for monitoring and tracking objects | ||
Patent #
US 6,900,731 B2
Filed 10/30/2002
|
Current Assignee
Bellsouth Intellectual Property Corporation
|
Original Assignee
Bellsouth Intellectual Property Corporation
|
Process for establishing computer network communication using a telephone message incorporating a two-part computer network address | ||
Patent #
US 6,912,577 B1
Filed 01/21/2000
|
Current Assignee
Sagem SA
|
Original Assignee
Sagem SA
|
Dynamic distributed data system and method | ||
Patent #
US 6,918,014 B1
Filed 10/06/2003
|
Current Assignee
Clouding Corporation
|
Original Assignee
Veritas Operating Corporation
|
Instantaneous mobile access to all pertinent life events | ||
Patent #
US 20050200478A1
Filed 05/05/2005
|
Current Assignee
Bellsouth Intellectual Property Corporation
|
Original Assignee
Bellsouth Intellectual Property Corporation
|
Method for monitoring and tracking objects | ||
Patent #
US 20040085207A1
Filed 10/30/2002
|
Current Assignee
Bellsouth Intellectual Property Corporation
|
Original Assignee
Bellsouth Intellectual Property Corporation
|
System for monitoring and tracking objects | ||
Patent #
US 20040084525A1
Filed 10/30/2002
|
Current Assignee
Bellsouth Intellectual Property Corporation
|
Original Assignee
Bellsouth Intellectual Property Corporation
|
Role-based message addressing for a computer network | ||
Patent #
US 20040122903A1
Filed 12/20/2002
|
Current Assignee
Veritas Technologies LLC
|
Original Assignee
Symantec Corporation
|
Input/output (I/O) scanner for a control system with peer determination | ||
Patent #
US 20030033030A1
Filed 03/02/2002
|
Current Assignee
Schneider Automation Incorporated
|
Original Assignee
Schneider Automation Incorporated
|
Hybrid system architecture for secure peer-to-peer-communications | ||
Patent #
US 20030105812A1
Filed 08/07/2002
|
Current Assignee
GigaMedia Access Corp.
|
Original Assignee
GigaMedia Access Corp.
|
Peer-to-peer namespace directory and discovery | ||
Patent #
US 20030126199A1
Filed 01/02/2002
|
Current Assignee
Intel Corporation
|
Original Assignee
Intel Corporation
|
File sharing system for serving content from a computer | ||
Patent #
US 20020120607A1
Filed 08/01/2001
|
Current Assignee
Lumenati Inc.
|
Original Assignee
Lumenati Inc.
|
Method and system for inter-enterprise agent communication and service invocation | ||
Patent #
US 20020138287A1
Filed 03/26/2001
|
Current Assignee
Hewlett-Packard Development Company L.P.
|
Original Assignee
Hewlett-Packard Development Company L.P.
|
Accounting in peer-to-peer data communication networks | ||
Patent #
US 20020165783A1
Filed 09/26/2001
|
Current Assignee
Telefonaktiebolaget LM Ericsson
|
Original Assignee
Telefonaktiebolaget LM Ericsson
|
Method and system for scalable content storage and delivery | ||
Patent #
US 8,224,968 B1
Filed 09/19/2005
|
Current Assignee
ATT Inc.
|
Original Assignee
ATT Intellectual Property I LP
|
Method and apparatus for providing disaster recovery using network peering arrangements | ||
Patent #
US 8,238,353 B2
Filed 12/23/2008
|
Current Assignee
ATT Intellectual Property II LP
|
Original Assignee
ATT Intellectual Property I LP
|
Peer-to-peer network with recovery capability | ||
Patent #
US 8,275,864 B1
Filed 12/20/2002
|
Current Assignee
Veritas Technologies LLC
|
Original Assignee
Symantec Operating Corporation
|
Apparatus and methods for utilizing statistical multiplexing to ensure quality of service in a network | ||
Patent #
US 8,300,541 B2
Filed 02/19/2008
|
Current Assignee
Time Warner Cable Enterprises LLC
|
Original Assignee
Time Warner Cable Inc.
|
Managing routing information for a computer network | ||
Patent #
US 8,370,523 B1
Filed 12/20/2002
|
Current Assignee
Veritas Technologies LLC
|
Original Assignee
Symantec Operating Corporation
|
Methods and apparatus for packetized content delivery over a content delivery network | ||
Patent #
US 8,516,529 B2
Filed 05/19/2010
|
Current Assignee
Time Warner Cable Enterprises LLC
|
Original Assignee
Time Warner Cable Enterprises LLC
|
Method and apparatus for providing disaster recovery using network peering arrangements | ||
Patent #
US 8,582,590 B2
Filed 08/06/2012
|
Current Assignee
ATT Inc.
|
Original Assignee
ATT Intellectual Property I LP
|
Method and system for real-time insertion of services during a call session over a communication network | ||
Patent #
US 8,650,617 B2
Filed 06/23/2008
|
Current Assignee
Cisco Technology Incorporated
|
Original Assignee
Cisco Technology Incorporated
|
Multimedia conference system and method which enables communication between private network and internet | ||
Patent #
US 8,767,590 B2
Filed 07/27/2005
|
Current Assignee
Plustek Incorporated
|
Original Assignee
Plustek Incorporated
|
Method and system for scalable content storage and delivery | ||
Patent #
US 8,838,811 B2
Filed 06/20/2012
|
Current Assignee
ATT Inc.
|
Original Assignee
ATT Intellectual Property I LP
|
Goal-oriented storage management for a distributed data storage network | ||
Patent #
US 8,886,705 B1
Filed 06/30/2003
|
Current Assignee
Veritas Technologies LLC
|
Original Assignee
Symantec Operating Corporation
|
Methods, systems, and products for tracking objects | ||
Patent #
US 8,896,422 B2
Filed 09/02/2008
|
Current Assignee
BELLSOUTH INTELLECTUAL PROPERTY CORPORATION NOW DOING BUSINESS AS ATT INTELLECTUAL PROPERTY I L.P.
|
Original Assignee
ATT Intellectual Property I LP
|
Methods and apparatus for content caching in a video network | ||
Patent #
US 8,990,869 B2
Filed 10/14/2013
|
Current Assignee
Time Warner Cable Enterprises LLC
|
Original Assignee
Time Warner Cable Enterprises LLC
|
IP session-based regulation and billing | ||
Patent #
US 9,003,033 B2
Filed 06/02/2009
|
Current Assignee
CenturyLink Intellectual Property LLC
|
Original Assignee
CenturyLink Intellectual Property LLC
|
Methods and apparatus for providing virtual content over a network | ||
Patent #
US 9,021,535 B2
Filed 02/20/2012
|
Current Assignee
Time Warner Cable Enterprises LLC
|
Original Assignee
Time Warner Cable Enterprises LLC
|
Digital domain content processing and distribution apparatus and methods | ||
Patent #
US 9,185,341 B2
Filed 09/03/2010
|
Current Assignee
Time Warner Cable Enterprises LLC
|
Original Assignee
Time Warner Cable Enterprises LLC
|
Recommendation engine apparatus and methods | ||
Patent #
US 9,215,423 B2
Filed 03/30/2009
|
Current Assignee
Time Warner Cable Enterprises LLC
|
Original Assignee
Time Warner Cable Enterprises LLC
|
Media bridge apparatus and methods | ||
Patent #
US 9,300,919 B2
Filed 07/27/2010
|
Current Assignee
Time Warner Cable Enterprises LLC
|
Original Assignee
Time Warner Cable Enterprises LLC
|
Digital domain content processing and distribution apparatus and methods | ||
Patent #
US 9,300,445 B2
Filed 05/27/2010
|
Current Assignee
Time Warner Cable Enterprises LLC
|
Original Assignee
Time Warner Cable Enterprises LLC
|
Technique for securely communicating programming content | ||
Patent #
US 9,313,530 B2
Filed 11/12/2012
|
Current Assignee
Time Warner Cable Inc.
|
Original Assignee
Time Warner Cable Enterprises LLC, Comcast Cable Holdings LLC
|
Downloadable security and protection methods and apparatus | ||
Patent #
US 9,313,458 B2
Filed 08/26/2013
|
Current Assignee
Time Warner Cable Enterprises LLC
|
Original Assignee
Time Warner Cable Enterprises LLC
|
Personal content server apparatus and methods | ||
Patent #
US 9,325,710 B2
Filed 05/06/2013
|
Current Assignee
Time Warner Cable Enterprises LLC
|
Original Assignee
Time Warner Cable Enterprises LLC
|
Apparatus and methods for rights-managed content and data delivery | ||
Patent #
US 9,342,661 B2
Filed 03/02/2010
|
Current Assignee
Time Warner Cable Enterprises LLC
|
Original Assignee
Time Warner Cable Enterprises LLC
|
Apparatus and methods for content delivery and message exchange across multiple content delivery networks | ||
Patent #
US 9,357,247 B2
Filed 07/12/2010
|
Current Assignee
Time Warner Cable Enterprises LLC
|
Original Assignee
Time Warner Cable Enterprises LLC
|
Personal media channel apparatus and methods | ||
Patent #
US 9,380,329 B2
Filed 07/07/2014
|
Current Assignee
Time Warner Cable Enterprises LLC
|
Original Assignee
Time Warner Cable Enterprises LLC
|
Secondary content insertion apparatus and methods | ||
Patent #
US 9,386,327 B2
Filed 05/24/2006
|
Current Assignee
Time Warner Cable Enterprises LLC
|
Original Assignee
Time Warner Cable Enterprises LLC
|
Methods and apparatus for selecting digital interface technology for programming and data delivery | ||
Patent #
US 9,398,336 B2
Filed 05/05/2014
|
Current Assignee
Time Warner Cable Enterprises LLC
|
Original Assignee
Time Warner Cable Enterprises LLC
|
Methods and apparatus for device capabilities discovery and utilization within a content distribution network | ||
Patent #
US 9,438,946 B2
Filed 06/03/2013
|
Current Assignee
Time Warner Cable Enterprises LLC
|
Original Assignee
Time Warner Cable Enterprises LLC
|
Apparatus and methods for automated highlight reel creation in a content delivery network | ||
Patent #
US 9,467,723 B2
Filed 04/04/2012
|
Current Assignee
Time Warner Cable Enterprises LLC
|
Original Assignee
Time Warner Cable Enterprises LLC
|
Methods and apparatus for enhanced advertising and promotional delivery in a network | ||
Patent #
US 9,503,691 B2
Filed 02/19/2008
|
Current Assignee
Time Warner Cable Enterprises LLC
|
Original Assignee
Time Warner Cable Enterprises LLC
|
Apparatus and methods for monitoring and optimizing delivery of content in a network | ||
Patent #
US 9,519,728 B2
Filed 12/04/2009
|
Current Assignee
Time Warner Cable Enterprises LLC
|
Original Assignee
Time Warner Cable Enterprises LLC
|
Methods and apparatus for packetized content delivery over a content delivery network | ||
Patent #
US 9,531,760 B2
Filed 05/19/2010
|
Current Assignee
Time Warner Cable Enterprises LLC
|
Original Assignee
Time Warner Cable Enterprises LLC
|
Apparatus and methods for content transfer protection | ||
Patent #
US 9,565,472 B2
Filed 12/10/2012
|
Current Assignee
Time Warner Cable Enterprises LLC
|
Original Assignee
Time Warner Cable Enterprises LLC
|
Methods and apparatus for content caching in a video network | ||
Patent #
US 9,596,489 B2
Filed 02/09/2015
|
Current Assignee
Time Warner Cable Enterprises LLC
|
Original Assignee
Time Warner Cable Enterprises LLC
|
Media bridge apparatus and methods | ||
Patent #
US 9,602,864 B2
Filed 06/08/2009
|
Current Assignee
Time Warner Cable Enterprises LLC
|
Original Assignee
Time Warner Cable Enterprises LLC
|
Apparatus and methods for controlled bandwidth reclamation | ||
Patent #
US 9,602,414 B2
Filed 02/09/2011
|
Current Assignee
Time Warner Cable Enterprises LLC
|
Original Assignee
Time Warner Cable Enterprises LLC
|
Methods and apparatus for audience data collection and analysis in a content delivery network | ||
Patent #
US 9,635,421 B2
Filed 09/07/2010
|
Current Assignee
Time Warner Cable Enterprises LLC
|
Original Assignee
Time Warner Cable Enterprises LLC
|
Apparatus and methods for provisioning in a download-enabled system | ||
Patent #
US 9,674,224 B2
Filed 12/30/2013
|
Current Assignee
Time Warner Cable Enterprises LLC
|
Original Assignee
Time Warner Cable Enterprises LLC
|
Methods and apparatus for audience data collection and analysis in a content delivery network | ||
Patent #
US 9,693,103 B2
Filed 06/13/2014
|
Current Assignee
Time Warner Cable Enterprises LLC
|
Original Assignee
Time Warner Cable Enterprises LLC
|
Methods, systems, and products for tracking objects | ||
Patent #
US 9,697,398 B2
Filed 07/18/2014
|
Current Assignee
ATT Intellectual Property I LP
|
Original Assignee
ATT Intellectual Property I LP
|
Methods and apparatus for premises content distribution | ||
Patent #
US 9,742,768 B2
Filed 05/19/2014
|
Current Assignee
Time Warner Cable Enterprises LLC
|
Original Assignee
Time Warner Cable Enterprises LLC
|
Media bridge apparatus and methods | ||
Patent #
US 9,749,677 B2
Filed 03/28/2016
|
Current Assignee
Time Warner Cable Enterprises LLC
|
Original Assignee
Time Warner Cable Enterprises LLC
|
Personal content server apparatus and methods | ||
Patent #
US 9,769,513 B2
Filed 01/19/2015
|
Current Assignee
Time Warner Cable Enterprises LLC
|
Original Assignee
Time Warner Cable Enterprises LLC
|
Apparatus and methods for rights-managed content and data delivery | ||
Patent #
US 9,817,952 B2
Filed 05/16/2016
|
Current Assignee
Time Warner Cable Enterprises LLC
|
Original Assignee
Time Warner Cable Enterprises LLC
|
Personal content server apparatus and methods | ||
Patent #
US 9,832,246 B2
Filed 04/25/2016
|
Current Assignee
Time Warner Cable Enterprises LLC
|
Original Assignee
Time Warner Cable Enterprises LLC
|
Methods and apparatus for premises content distribution | ||
Patent #
US 9,866,609 B2
Filed 06/08/2009
|
Current Assignee
Time Warner Cable Enterprises LLC
|
Original Assignee
Time Warner Cable Enterprises LLC
|
Apparatus and methods for multi-stage multiplexing in a network | ||
Patent #
US 9,883,219 B2
Filed 04/14/2014
|
Current Assignee
Time Warner Cable Enterprises LLC
|
Original Assignee
Time Warner Cable Enterprises LLC
|
Apparatus and methods for multimedia coordination | ||
Patent #
US 9,883,223 B2
Filed 09/01/2015
|
Current Assignee
Time Warner Cable Enterprises LLC
|
Original Assignee
Time Warner Cable Enterprises LLC
|
Digital domain content processing and distribution apparatus and methods | ||
Patent #
US 9,900,642 B2
Filed 11/09/2015
|
Current Assignee
Time Warner Cable Enterprises LLC
|
Original Assignee
Time Warner Cable Enterprises LLC
|
Apparatus and methods for content delivery and message exchange across multiple content delivery networks | ||
Patent #
US 9,906,838 B2
Filed 07/12/2010
|
Current Assignee
Time Warner Cable Enterprises LLC
|
Original Assignee
Time Warner Cable Enterprises LLC
|
Apparatus and method for wireless network services in moving vehicles | ||
Patent #
US 9,918,345 B2
Filed 01/20/2016
|
Current Assignee
Time Warner Cable Enterprises LLC
|
Original Assignee
Time Warner Cable Enterprises LLC
|
Downloadable security and protection methods and apparatus | ||
Patent #
US 9,923,883 B2
Filed 04/11/2016
|
Current Assignee
Time Warner Cable Enterprises LLC
|
Original Assignee
Time Warner Cable Enterprises LLC
|
Method and apparatus for network bandwidth conservation | ||
Patent #
US 9,930,387 B2
Filed 03/28/2016
|
Current Assignee
Time Warner Cable Enterprises LLC
|
Original Assignee
Time Warner Cable Enterprises LLC
|
Methods and apparatus for determining an optimized wireless interface installation configuration | ||
Patent #
US 9,935,833 B2
Filed 11/05/2014
|
Current Assignee
Time Warner Cable Enterprises LLC
|
Original Assignee
Time Warner Cable Enterprises LLC
|
Digital domain content processing and distribution apparatus and methods | ||
Patent #
US 9,942,077 B2
Filed 03/28/2016
|
Current Assignee
Time Warner Cable Inc.
|
Original Assignee
Time Warner Cable Enterprises LLC
|
Apparatus and methods for packetized content delivery over a bandwidth efficient network | ||
Patent #
US 9,961,413 B2
Filed 03/19/2015
|
Current Assignee
Time Warner Cable Enterprises LLC
|
Original Assignee
Time Warner Cable Enterprises LLC
|
Methods and apparatus for business-based network resource allocation | ||
Patent #
US 9,961,383 B2
Filed 08/18/2014
|
Current Assignee
Time Warner Cable Enterprises LLC
|
Original Assignee
Time Warner Cable Enterprises LLC
|
Technique for securely communicating programming content | ||
Patent #
US 9,973,798 B2
Filed 04/11/2016
|
Current Assignee
Time Warner Cable Inc.
|
Original Assignee
Time Warner Cable Enterprises LLC, Comcast Cable Communications LLC
|
Apparatus and methods for selective data network access | ||
Patent #
US 9,986,578 B2
Filed 12/04/2015
|
Current Assignee
Time Warner Cable Enterprises LLC
|
Original Assignee
Time Warner Cable Enterprises LLC
|
Methods and apparatus for selecting digital access technology for programming and data delivery | ||
Patent #
US 10,009,652 B2
Filed 06/01/2015
|
Current Assignee
Time Warner Cable Enterprises LLC
|
Original Assignee
Time Warner Cable Enterprises LLC
|
Apparatus and methods for content transfer protection | ||
Patent #
US 10,050,945 B2
Filed 02/06/2017
|
Current Assignee
Time Warner Cable Enterprises LLC
|
Original Assignee
Time Warner Cable Enterprises LLC
|
Methods and apparatus for device capabilities discovery and utilization within a content distribution network | ||
Patent #
US 10,051,302 B2
Filed 09/02/2016
|
Current Assignee
Time Warner Cable Enterprises LLC
|
Original Assignee
Time Warner Cable Enterprises LLC
|
Methods and apparatus for premises content distribution | ||
Patent #
US 10,069,836 B2
Filed 08/21/2017
|
Current Assignee
Time Warner Cable Enterprises LLC
|
Original Assignee
Time Warner Cable Enterprises LLC
|
Methods and apparatus for content caching in a video network | ||
Patent #
US 10,085,047 B2
Filed 03/13/2017
|
Current Assignee
Time Warner Cable Enterprises LLC
|
Original Assignee
Time Warner Cable Enterprises LLC
|
Apparatus and methods for data collection, analysis and service modification based on online activity | ||
Patent #
US 10,116,676 B2
Filed 02/16/2016
|
Current Assignee
Time Warner Cable Enterprises LLC
|
Original Assignee
Time Warner Cable Enterprises LLC
|
Methods and apparatus for providing virtual content over a network | ||
Patent #
US 10,129,576 B2
Filed 02/21/2013
|
Current Assignee
Time Warner Cable Enterprises LLC
|
Original Assignee
Time Warner Cable Enterprises LLC
|
Apparatus and methods for content delivery and message exchange across multiple content delivery networks | ||
Patent #
US 10,136,172 B2
Filed 09/22/2015
|
Current Assignee
Time Warner Cable Enterprises LLC
|
Original Assignee
Time Warner Cable Enterprises LLC
|
Apparatus and methods ensuring data privacy in a content distribution network | ||
Patent #
US 10,148,623 B2
Filed 11/12/2010
|
Current Assignee
Time Warner Cable Enterprises LLC
|
Original Assignee
Time Warner Cable Enterprises LLC
|
Apparatus and methods for monitoring and diagnosing a wireless network | ||
Patent #
US 10,164,858 B2
Filed 06/15/2016
|
Current Assignee
Time Warner Cable Enterprises LLC
|
Original Assignee
Time Warner Cable Enterprises LLC
|
Technique for securely communicating and storing programming material in a trusted domain | ||
Patent #
US 10,178,072 B2
Filed 07/02/2015
|
Current Assignee
Time Warner Cable Enterprises LLC
|
Original Assignee
Time Warner Cable Enterprises LLC
|
Methods and apparatus for enabling media functionality in a content delivery network | ||
Patent #
US 10,178,435 B1
Filed 03/11/2013
|
Current Assignee
Time Warner Cable Enterprises LLC
|
Original Assignee
Time Warner Cable Enterprises LLC
|
Digital domain content processing and distribution apparatus and methods | ||
Patent #
US 10,200,731 B2
Filed 02/17/2018
|
Current Assignee
Time Warner Cable Enterprises LLC
|
Original Assignee
Time Warner Cable Enterprises LLC
|
Methods and apparatus for user-based targeted content delivery | ||
Patent #
US 10,223,713 B2
Filed 06/29/2015
|
Current Assignee
Time Warner Cable Enterprises LLC
|
Original Assignee
Time Warner Cable Enterprises LLC
|
Methods and apparatus for content delivery and replacement in a network | ||
Patent #
US 10,225,592 B2
Filed 08/07/2015
|
Current Assignee
Time Warner Cable Enterprises LLC
|
Original Assignee
Time Warner Cable Enterprises LLC
|
Apparatus and methods for automated highlight reel creation in a content delivery network | ||
Patent #
US 10,250,932 B2
Filed 10/10/2016
|
Current Assignee
Time Warner Cable Enterprises LLC
|
Original Assignee
Time Warner Cable Enterprises LLC
|
Methods and apparatus for packetized content delivery over a content delivery network | ||
Patent #
US 10,264,029 B2
Filed 04/21/2010
|
Current Assignee
Time Warner Cable Enterprises LLC
|
Original Assignee
Time Warner Cable Enterprises LLC
|
Recommendation engine apparatus and methods | ||
Patent #
US 10,313,755 B2
Filed 12/14/2015
|
Current Assignee
Time Warner Cable Enterprises LLC
|
Original Assignee
Time Warner Cable Enterprises LLC
|
Apparatus and methods for rights-managed content and data delivery | ||
Patent #
US 10,339,281 B2
Filed 11/13/2017
|
Current Assignee
Time Warner Cable Enterprises LLC
|
Original Assignee
Time Warner Cable Enterprises LLC
|
Downloadable security and protection methods and apparatus | ||
Patent #
US 10,362,018 B2
Filed 03/19/2018
|
Current Assignee
Time Warner Cable Enterprises LLC
|
Original Assignee
Time Warner Cable Enterprises LLC
|
Methods and apparatus for client-based dynamic control of connections to co-existing radio access networks | ||
Patent #
US 10,368,255 B2
Filed 07/25/2017
|
Current Assignee
Charter Communications Operating LLC
|
Original Assignee
Time Warner Cable Enterprises LLC
|
Apparatus and methods for provisioning in a download-enabled system | ||
Patent #
US 10,404,752 B2
Filed 06/05/2017
|
Current Assignee
Time Warner Cable Enterprises LLC
|
Original Assignee
Time Warner Cable Enterprises LLC
|
Apparatus and methods for centralized message exchange in a user premises device | ||
Patent #
US 10,404,758 B2
Filed 02/26/2016
|
Current Assignee
Time Warner Cable Enterprises LLC
|
Original Assignee
Time Warner Cable Enterprises LLC
|
Digital domain content processing and distribution apparatus and methods | ||
Patent #
US 10,411,939 B2
Filed 04/09/2018
|
Current Assignee
Time Warner Cable Inc.
|
Original Assignee
Time Warner Cable Enterprises LLC
|
Apparatus and methods for carrier allocation in a communications network | ||
Patent #
US 10,432,990 B2
Filed 08/14/2017
|
Current Assignee
Time Warner Cable Enterprises LLC
|
Original Assignee
Time Warner Cable Enterprises LLC
|
Apparatus and methods for packetized content delivery over a bandwidth-efficient network | ||
Patent #
US 10,448,117 B2
Filed 04/30/2018
|
Current Assignee
Time Warner Cable Enterprises LLC
|
Original Assignee
Time Warner Cable Enterprises LLC
|
Apparatus and methods for monitoring and optimizing delivery of content in a network | ||
Patent #
US 10,455,262 B2
Filed 12/12/2016
|
Current Assignee
Time Warner Cable Enterprises LLC
|
Original Assignee
Time Warner Cable Enterprises LLC
|
Apparatus and methods for dynamic open-access networks | ||
Patent #
US 10,492,034 B2
Filed 03/07/2016
|
Current Assignee
Time Warner Cable Enterprises LLC
|
Original Assignee
Time Warner Cable Enterprises LLC
|
Digital domain content processing and distribution apparatus and methods | ||
Patent #
US RE47,760 E1
Filed 07/06/2017
|
Current Assignee
Time Warner Cable Enterprises LLC
|
Original Assignee
Time Warner Cable Enterprises LLC
|
Apparatus and methods for selective data network access | ||
Patent #
US 10,560,772 B2
Filed 05/25/2018
|
Current Assignee
Time Warner Cable Enterprises LLC
|
Original Assignee
Time Warner Cable Enterprises LLC
|
Apparatus and methods for content delivery and message exchange across multiple content delivery networks | ||
Patent #
US 10,587,906 B2
Filed 11/19/2018
|
Current Assignee
Time Warner Cable Enterprises LLC
|
Original Assignee
Time Warner Cable Enterprises LLC
|
Methods and apparatus for local channel insertion in an all-digital content distribution network | ||
Patent #
US 10,602,231 B2
Filed 01/11/2016
|
Current Assignee
Time Warner Cable Enterprises LLC
|
Original Assignee
Time Warner Cable Enterprises LLC
|
Personal content server apparatus and methods | ||
Patent #
US 10,623,462 B2
Filed 11/27/2017
|
Current Assignee
Time Warner Cable Enterprises LLC
|
Original Assignee
Time Warner Cable Enterprises LLC
|
Methods and apparatus for dynamic control of connections to co-existing radio access networks | ||
Patent #
US 10,638,361 B2
Filed 06/06/2017
|
Current Assignee
Charter Communications Operating LLC
|
Original Assignee
Charter Communications Operating LLC
|
Apparatus and methods for providing wireless service in a venue | ||
Patent #
US 10,645,547 B2
Filed 06/02/2017
|
Current Assignee
Charter Communications Operating LLC
|
Original Assignee
Charter Communications Operating LLC
|
Media bridge apparatus and methods | ||
Patent #
US 10,652,607 B2
Filed 08/28/2017
|
Current Assignee
Time Warner Cable Enterprises LLC
|
Original Assignee
Time Warner Cable Enterprises LLC
|
Digital domain content processing and distribution apparatus and methods | ||
Patent #
US 10,681,405 B2
Filed 02/04/2019
|
Current Assignee
Time Warner Cable Enterprises LLC
|
Original Assignee
Time Warner Cable Enterprises LLC
|
Apparatus and method for wireless network services in moving vehicles | ||
Patent #
US 10,687,371 B2
Filed 03/12/2018
|
Current Assignee
Time Warner Cable Enterprises LLC
|
Original Assignee
Time Warner Cable Enterprises LLC
|
Cloud-based digital content recorder apparatus and methods | ||
Patent #
US 10,687,115 B2
Filed 06/01/2016
|
Current Assignee
Time Warner Cable Enterprises LLC
|
Original Assignee
Time Warner Cable Enterprises LLC
|
Methods, systems, and products for tracking objects | ||
Patent #
US 10,740,579 B2
Filed 04/06/2017
|
Current Assignee
ATT Intellectual Property I LP
|
Original Assignee
ATT Intellectual Property I LP
|
Methods and apparatus for selecting digital access technology for programming and data delivery | ||
Patent #
US 10,743,066 B2
Filed 06/25/2018
|
Current Assignee
Time Warner Cable Enterprises LLC
|
Original Assignee
Time Warner Cable Enterprises LLC
|
Methods and apparatus for user-based targeted content delivery | ||
Patent #
US 10,810,628 B2
Filed 03/04/2019
|
Current Assignee
Time Warner Cable Enterprises LLC
|
Original Assignee
Time Warner Cable Enterprises LLC
|
Technique for securely communicating programming content | ||
Patent #
US 10,848,806 B2
Filed 05/14/2018
|
Current Assignee
Time Warner Cable Enterprises LLC, Comcast Cable Communications LLC
|
Original Assignee
Time Warner Cable Enterprises LLC
|
Methods and apparatus for content delivery and replacement in a network | ||
Patent #
US 10,863,220 B2
Filed 03/04/2019
|
Current Assignee
Time Warner Cable Enterprises LLC
|
Original Assignee
Time Warner Cable Enterprises LLC
|
Digital domain content processing and distribution apparatus and methods | ||
Patent #
US 10,892,932 B2
Filed 09/05/2019
|
Current Assignee
Time Warner Cable Enterprises LLC, Time Warner Cable Inc.
|
Original Assignee
Time Warner Cable Enterprises LLC
|
Peer to peer network for a mobile radio transceiver | ||
Patent #
US 5,642,350 A
Filed 11/23/1993
|
Current Assignee
Telefonaktiebolaget LM Ericsson
|
Original Assignee
Telefonaktiebolaget LM Ericsson
|
Seamless peer-to-peer communications in a layered communications architecture | ||
Patent #
US 5,790,553 A
Filed 10/04/1995
|
Current Assignee
International Business Machines Corporation
|
Original Assignee
International Business Machines Corporation
|
Fax routing system and method using standard fax machine and personal computer | ||
Patent #
US 5,862,202 A
Filed 04/10/1997
|
Current Assignee
OpenPrint LLC
|
Original Assignee
Information Medical Retreival Inc.
|
System and method for secure peer-to-peer communication between downloaded programs | ||
Patent #
US 5,761,421 A
Filed 03/25/1996
|
Current Assignee
Oracle America Inc.
|
Original Assignee
Sun Microsystems Incorporated
|
Method and apparatus for selectively enabling bi-directional communication only between a dedicated pair of transceivers | ||
Patent #
US 5,392,454 A
Filed 10/23/1992
|
Current Assignee
Moog Incorporated
|
Original Assignee
Moog Incorporated
|
25 Claims
-
1. A method of establishing communication between an originating unit and a receiving unit over a network channel that identifies communicating units by network address, comprising the steps of:
-
sending a message from said originating unit to said receiving unit over a monitor channel;
monitoring a monitor channel by said receiving unit;
generating a trigger event in response to at least one of said sending and monitoring steps;
determining information indicative of a first network address associated with at least one of said originating unit and said receiving unit; and
in response to said triggering event, establishing communication between said originating unit and said receiving unit over said network channel using said first network address. - View Dependent Claims (2, 3, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14)
initiating communication for sending said message over said monitor channel by said originating unit; and
terminating communication after sending said message over said monitor channel by said originating unit.
-
-
3. The method according to claim 1 further comprising the steps of:
-
responding to said message by initiating communication over said monitor channel by said receiving unit;
exchanging information indicative of a first network address between said originating unit and said receiving unit over said monitor channel; and
terminating communication over said monitor channel by said receiving unit.
-
-
5. The method according to claim 1 wherein said first network address associated with at least one of said originating unit and said receiving unit is determined using the identity of at least one of said originating unit and said receiving unit and an address locator service.
-
6. The method according to claim 5 wherein said originating unit determines said first network address for said receiving unit by using said identity of said originating unit and an address locator service, where said address locator service is found on said network channel and can be accessed by said receiving unit.
-
7. The method according to claim 5 wherein said receiving unit determines said first network address for said originating unit by using said identity of said originating unit and an address locator service, where said address locator service is found on said network channel and can be accessed by said receiving unit.
-
8. The method according to claim 1 wherein said message is indicative of the identity of said originating unit and said receiving unit determines said first network address by using said identity of said originating unit and a stored rule set.
-
9. The method according to claim 1 wherein said first network address for said originating unit is transmitted to receiving unit by said originating unit using said message.
-
10. The method according to claim 1 further comprising the step of:
- connecting said originating unit to said network channel in response to said triggering event.
-
11. The method according to claim 1 further comprising the step of:
- connecting said receiving unit to said network channel in response to said triggering event.
-
12. The method according to claim 1 wherein said monitor channel is based upon a circuit switched communication medium.
-
13. The method according to claim 1 wherein said monitor channel is based upon an unbounded communication medium.
-
14. The method according to claim 1 wherein said network channel is based upon a packet switched communication medium.
-
4. The method according to claim I further comprising the steps of:
receiving information indicative of identity of said originating unit by said receiving unit over said monitor channel.
-
15. An apparatus for supporting communication over a network channel that identifies communicating units by network address said apparatus using a monitor channel, comprising:
-
a monitor module coupled to said monitor channel;
a first network communication handler coupled to said monitor module for establishing communication with said network channel;
a call origination module for sending a message to said monitor module over said monitor channel;
a second network communication handler coupled to said call origination module for establishing communication with said network channel;
a memory accessible by at least one of said first and second network communication handlers for storing information indicative of a first network address associated with at least one of said first and second network communication handlers; and
at least one of said first and second network communication handlers having a module responsive to at least one of said monitor module and said call origination module for accessing said memory, thereby determining said first network address, and establishing communication between said first and second network communication handlers over said network channel using said first network address. - View Dependent Claims (16, 17, 18, 19, 20, 21, 22, 23)
-
-
24. A method of establishing communication between an originating unit and a receiving unit comprising the steps of:
-
providing a network channel that identifies communicating units by dynamic network addressing;
connecting said originating unit to said network channel, thereby establishing a first network address for said originating unit;
sending a message from said originating unit to said receiving unit over a monitor channel, wherein said first network address is transmitted via said message to said receiving unit by said originating unit;
monitoring a monitor channel by said receiving unit;
receiving said message by said receiving unit; and
establishing communication between said originating, unit and said receiving unit over said network channel using said first network address.
-
-
25. A method of establishing communication between an originating unit and a receiving unit over a network channel that identifies communicating units by network address, comprising the steps of:
-
sending a message from said originating unit to said receiving unit over a monitor channel;
monitoring a monitor channel by said receiving unit;
determining information indicative of the identity of at least one of said originating unit and said receiving unit;
generating a trigger event in response to at least one of said sending and monitoring steps, wherein said trigger event includes activating at least one of said originating unit and said receiving unit to said network channel, thereby establishing a first network address for at least one of said originating unit and said receiving unit and determining said first network address by the other of said originating unit or said receiving unit using the information indicative of the identity of at least one of said originating unit and said receiving unit; and
in response to said triggering event, establishing communication between said originating unit and said receiving unit over said network channel using said first network address.
-
1 Specification
This application is a continuation of application Ser. No. 08/866,136 filed May 30, 1997, now U.S. Pat. No. 6,094,676.
1. Technical Field
The present invention relates generally to computer communication, and more particularly to establishing peer-to-peer communication between computers using dynamic network addresses to access a network channel.
2. Discussion
The Internet provides a means for establishing a communication link between two remote computers. A peer-to-peer or one-to-one connection between remote computers allows these computer users to conduct a conversation, exchange files, or participate in real-time gaming. However, establishing peer-to-peer communication with someone through the Internet is at best inconvenient.
In the past, a user needed to schedule in advance a time when both users would connect to the Internet. At the appointed time, the first user would connect to the Internet to publish their dynamic address using an Internet address location service. The second user would then connect and use the same address location service to lookup the network address of the first user. Alternatively, after connecting to the Internet the first user may manually lookup their temporary network address and communicate it to the second user. Assuming both users are simultaneously connected, the two remote users could then establish a peer-to-peer connection. Comparable to trying to meet someone at an airport, this process is complicated, frustrating and unpredictable.
Difficulty in establishing peer-to-peer communication stems from using dynamic network addresses when connecting to the Internet. Many remote computer users gain access to the Internet through either of the following two means: (1) through a telephone dial-up connection provided by a local Internet service provider that dynamically assigns network addresses, or (2) through a local area network having a limited number of permanent Internet addresses and which dynamically assigns Internet network addresses to requesting local users. Predetermined methods for establishing peer-to-peer connections are thus inhibited by dynamic network addresses and temporary network connections.
Current communication methods also do not exploit cost efficiencies associated with using the Internet to eliminate the cost of a long distance phone call. For instance, unattended, automated file exchanges between remote users can be done cheaply using the Internet. However, two problems must be overcome. First, it can be problematic when a remote user of a receiving computer is not connected to the Internet when the user of the originating computer desires to establish communication. Maintaining a continuous connection to the Internet by a remote computer can be very expensive as costs accrue based on connection time. Second, establishing an immediate connection requires that a remote user of the receiving computer be present at the time communication is established.
Accordingly, a need exists for a simple automated method and apparatus for establishing peer-to-peer communication between remote computers over the Internet or other network channels. Establishing a connection should overcome any limitations caused by dynamic network addressing and temporary network connections. The receiving computer should monitor a second monitor channel. The originating computer can then initiate the connection process by sending a message along the monitoring channel, and thus minimize overall transaction costs associated with maintaining a continuous connection to either the monitor or network channel. It is further desirable that this method establish communication without any intervention by the remote user of the receiving computer.
The present invention is a computer-implemented method of establishing peer-to-peer communication between two remote computing units over a network channel. An originating computer sends a message over a monitor channel to a receiving computer, and the receiving computer monitors the monitor channel. A triggering event is generated in response to at least one of the sending a message or the monitoring. The originating computer and/or the receiving computer, if necessary, will connect to the network channel. In response to the triggering event, either the originating computer or the receiving computer determines a network address associated with either the originating computer or the receiving computer. Using the network address, peer-to-peer communication between the originating computer and receiving computer is established over the network channel.
Various hardware configurations for either computer, with respect to the network channel, can be accommodated by this method for establishing peer-to-peer communication. In addition, determining the network address and establishing communication may be initiated, with or without the use of an address location service, by either computer.
The invention also provides an apparatus for supporting peer-to-peer communication over a network channel. The apparatus includes a call origination module for sending a message over a monitor channel. The call origination module is coupled to a first handler module for establishing communication. A monitor module, monitoring the monitor channel, is also coupled to a second handler module for establishing communication. A memory accessible by at least one of the handler modules is used for storing information indicative of the network address of at least one of the handler modules, and in response to the triggering message, another module, associated with either handler module, is used for accessing the memory, determining a network address and establishing the communication link.
Additional advantages and features of the present invention will become apparent to those skilled in the art upon reading the following detailed description and upon reference to the drawings in which:
FIG. 1 is a diagram showing suitable configurations for system components to support peer-to-peer communication across a network channel.
FIG. 2 illustrates the components of the apparatus in the present invention.
FIG. 3 is block diagram showing the principle functions of the present invention.
FIG. 4 is a functional diagram showing the steps for establishing peer-to-peer communication using the dynamic network address of the receiving unit in the present invention.
FIG. 5 is a functional diagram showing the steps for establishing peer-to-peer communication using the dynamic network address of the originating unit in the present invention.
FIG. 6 is a functional diagram showing the steps for establishing peer-to-peer communication using the permanent network address of the originating unit in the present invention.
FIG. 7 is a flow chart which depicts the steps for establishing peer-to-peer communication for an originating module in the present invention.
FIG. 8 is a flow chart which depicts the steps for establishing peer-to-peer communication for a receiving module in the present invention.
The following description of the preferred embodiment is merely exemplary in nature and is in no way intended to limit the invention or its application or its uses.
FIG. 1 shows suitable system components to support peer-to-peer communication across a network channel 10. In the present invention, the Internet is being used as a network channel 10. The Internet is a vast collection of inter-connected networks that primarily use the TCP/IP protocol to communicate and a packet switched media to transmit messages. The interconnected networks individually may consist of Ethernet network systems, Token Ring network systems or other network configurations.
Remote computers utilize the network 10 to establish communication links. A remote computer may access the network channel 10 in a variety of ways. As best seen in FIG. 1, a remote computer 11 may have a direct physical connection 12 to the network channel 10; the physical connection 12 refers to a twisted wire pairs, coaxial cable or optical fibers as its physical media which interconnects a remote computer 11 to the network channel 10. In addition, a remote computer 17 may access the network channel 10 through a local area network (LAN) 16. A LAN 16 may support one or more remote computers 17 which may outnumber the one or more direct physical connections 12 between the LAN 16 and the network channel 10. Upon requests by local computers 17, the LAN 16 will dynamically assign addresses to local computers 17 for accessing the network channel 10.
Alternatively, a remote computer 18 may access the network channel 10 through an Internet service provider 14. Although the Internet service provider 14 is shown as a single computer, it also may consist of a network configuration. The remote computer 18 may establish communication with the Internet service provider 14 by sending messages using modems 15 over the telephone system. The various configurations shown for remote computers may apply to either originating units or receiving units as discussed in the present invention. Those skilled in the art will appreciate that a variety of means can be used for accessing a variety of different network configurations.
An apparatus 19 for supporting peer-to-peer communication over the network channel 10 in the present invention is shown in FIG. 2. The apparatus 19 includes an originating unit 22, a receiving unit 24, a network channel 10, and a monitor channel 20. More particularly, the originating unit 22 comprises a call origination module 32 which is coupled to a first handler module 33. The receiving unit 24 comprises a monitor module 35 which is coupled to a second handler module 36. The first handler module 33 and second handler module 36, each have access to a memory unit 34 and 37, respectively, and can establish communication with network channel 10. In addition, a third memory unit 40, such as an address locater service, is coupled to network channel 10 and is accessible by either of the first handler module 33 or the second handler module 36. Collectively, the memory units comprise a peer-to-peer rule set 30 used by the apparatus 19 to determine the network address of at least one of the said first handler module 33 and second handler module 36.
Primary events for establishing peer-to-peer communication between two remote computing units over a network channel 10 are illustrated in FIG. 3. First, a message 42 is sent by the originating unit 22 to the receiving unit 24 over a monitor channel 20. By continuous monitoring of the monitor channel 20, a message 44 is received by the receiving unit 24. In response to either sending message 42 or the monitoring message 44, a triggering event 46 is generated. In response to the triggering event 46, either the originating unit 22 or receiving unit 24 will determine information 47 indicative of a network address associated with either the originating unit 22 or receiving unit 24. Subsequently, both of the originating unit 22 and receiving unit 24 will handle a message 48 to establish communication between the originating unit 22 and the receiving unit 24 over the network channel 10.
More particularly, FIG. 4 shows a functional diagram of the steps for establishing peer-to-peer communication using the dynamic network address of the receiving unit 24. First, the originating unit 22 sends a message 50 to the receiving unit 24 over the monitor channel 20. The monitor channel 20 can be a channel reachable at any time and will most likely consist of a bounded communication media such as a circuit switched communication pathway used in a telephone system. In addition, a unbounded communication media, such as high-frequency radio transmissions, microwave transmissions, cellular radio transmissions or satellite transmissions, may also be used as a monitor channel 20. Those skilled in the art will appreciate that a variety of transmission channels can be utilized as a monitor channel 20. In the case of bounded communication media, a physical connection between the originating unit 22 and the monitoring channel 20 may need to be established in order to send the message 50.
By monitoring the monitor channel 20, the receiving unit 24 must differentiate between different incoming transmissions. Since the monitor channel 20 may serve multiple purposes, the receiving unit 24 will distinguish between a message transmitted from an originating unit 22 desirous of establishing communication and an ordinary telephone call or a facsimile transmission from the originating unit 22 or a different remote unit. Upon receiving a request to establish communication, the receiving unit 24 may react to the message in either of two ways.
First, the receiving unit 24 may respond to 54 the transmitted message by exchanging information with the originating unit. A physical connection may need to be established in order to respond 54 over the monitor channel 20. In this example, an indicator of the originating unit'"'"'s 22 willingness to establish communication and the identity of the originating unit may be passed to the receiving unit 24. During the information exchange, the receiving unit 22 may also conduct a verification/security check to ensure that the originating unit 22 is an authorized participant. As will be apparent to one skilled in the art, additional information related to this peer-to-peer communication transaction may also be exchanged. Upon completion of the information exchange, any physical connections between the originating unit 22 and the monitor channel 20, and the receiving unit 24 and the monitor channel 20 can be disconnected.
Secondly, the receiving unit 24 may only receive 52 the transmitted message.
Receiving 52 the message does not require a two-way exchange of information between the originating unit 22 and the receiving unit 24. For example, a paging device or caller identification services used in the telephone system allows the recipient of the message to identify the sender (by telephone number) without responding to message; these two identification means or some similar means could also be used by the receiving unit 24 to identify the originating unit 22. Unlike the above described information exchange, the originating unit 22 assumes that the message has been received and that there is a willingness to establish a connection. Likewise, the receiving unit 24 infers from the message the originating unit'"'"'s 22 willingness to establish a connection. Similar to the originating unit 22, a physical connection by the receiving unit 24 to the monitor channel 20 may be needed when a bounded communication media is used for the monitor channel 20.
Next, the transmitted message triggers the receiving unit 24 to publish 56 its network address using an address locater service 40 found on the network channel 10. An IP address may be used to publish the network address of the receiving computer when the Internet is used as the network channel 10. The receiving unit 24 may need to establish a physical connection to the network channel 10 before executing this event and may need to use the same physical means as used by the monitor channel 20, such as a telephone line, to establish a connection. Correspondingly, upon sending the message or upon completing an information exchange, the originating unit 22 is also triggered to access the address location service 40 on the network channel 10. Once the receiving unit 24 has published 56 its IP address, then the originating unit 22 can retrieve 58 this IP address based on the identity of the receiving unit 24. The identity of the receiving unit 24 may be signified by its telephone number or some other information which is known by the originating unit 22 prior to transmitting the initial message or it may have been obtained during the exchange of messages on the monitor channel 20.
Finally, in response to these triggering events, the originating unit 22 establishes communication 60 between the originating unit 22 and the receiving unit 24 over the network channel 10 by using the retrieved network address of the receiving unit 24. Once the two units have established a communication link across the network channel 10, the two remote users can conduct a conversation, exchange files, participate in real-time gaming or any other peer-to-peer activity. At the completion of their communication session, the originating unit 22 and receiving unit 24 can be disconnected to minimize transaction costs associated with accessing the network channel 10.
Similarly, FIG. 5 shows a functional diagram of the steps for establishing peer-to-peer communication, but uses the dynamic network address of the originating unit 22 to establish communication. First, the originating unit 22 sends a message 70 to the receiving unit 24 over the monitor channel 20. The receiving unit 24 will be monitoring the monitor channel 20, and thus react to the transmitted message. The receiving unit 24 may only receive 72 the transmitted message or it may respond to 74 the message by exchanging information with the originating unit 22 over the monitor channel 20. Those skilled in the art will appreciate that these initial steps are the same as seen above, and thus various changes, modifications and variations as previously described are also applicable.
By transmitting the message, the originating unit 22 is triggered to access the network channel 10 and publish 78 its network address using an address location service 40. Correspondingly, the receiving unit 24 is also triggered to access the address location service 40. After the originating unit 22 has published its network address, the receiving unit 24 can retrieve 76 this network address based on the identity of the originating unit 22. The identity of the originating unit 22 may be signified by its telephone number or some other information ascertained from the transmitted message.
Another variation in the steps for establishing peer-to-peer communication using the network address of the originating unit 22 is illustrated in FIG. 6. A communication link may be established without the use of an address location service. For instance, the originating unit 22 connects to the network channel 10, and thus establishes its dynamic network address before transmitting a message to the receiving unit 24. The originating unit 22 can then send 82 the receiving unit 24 its network address. The receiving unit 24 will respond to 86 the message and establish 90 peer-to-peer communication over the network channel 10 using the transmitted network address of the originating unit 22. As will be apparent to one skilled in the art, if the originating unit 22 has a permanent network address, then its network address can be transmitted without having to connect to the network channel 10.
Alternatively, when the originating unit 22 has a permanent network address, only the identity of the originating unit 22 could be sent to 82 the receiving unit 24 for establishing peer-to-peer communication. Upon receiving 84 the identity of the originating unit 22, the receiving unit 24 is triggered to determine 88 the originating unit'"'"'s 22 permanent network address. For example, the receiving unit 24 may have internal access to memory which maps telephone numbers to network addresses, and therefore can determine the network address for originating unit 22 which has sent the triggering message.
In response to the above trigger events, the receiving unit 24 has determined the network address for originating unit 22. The remaining step, as shown in both FIG. 5 and FIG. 6, involve the receiving unit 24 establishing communication 80 and 90, respectively, between the originating unit 22 and the receiving unit 24 over the network channel 10 by using the network address for the originating unit 22. As will be apparent to one skilled in the art, various means exist for determining and exchanging the network address for either the originating unit 22 or receiving unit 24 in the present invention.
FIG. 7 is flowchart depicting an embodiment of the procedures encapsulated in the originating unit in the present invention (see Appendix A for an example of pseudo code used in the originating unit). For the preferred embodiment, the user of the originating module indicates a remote recipient computer for establishing a communication link. In this embodiment, the originating and receiving units have dial-up connections to the network channel and the originating unit is not connected to network channel when process is initiated. Start block 100 signifies the users request to initiate a communication session, and begins the process with block 102. Decision block 102 begins the inquiry into what connection means will be used by the originating module to connect to the receiving module. If decision block 102 determines that originating module has an IP address for the receiving module, then processing continues at block 116. However, if decision block 102 determines that it does not have an IP address, then decision block 104 will determine whether the originating unit has a telephone number that can be used to reach the receiving unit.
If the originating unit does not have a telephone number, then processing continues at block 112. On the other hand, if the originating unit does have a telephone number, then in block 106, originating unit will dial the telephone number and wait for an answer from receiving unit. Block 106 continues the process in block 108. Decision block 108 determines if the receiving unit has answered the telephone and is willing to establish a connection with the originating unit. If so, proceed to block 110; but otherwise, if the receiving unit fails to answers the telephone or is unwilling to connect, then processing continues at block 122.
Decision block 110 determines whether receiving unit has supplied its ILS address to originating unit. If the receiving unit has supplied its ILS address, then processing continues in block 116. However, without receiving the ILS address, block 112 determines if originating unit already has a ILS address for the receiving unit. If decision block 112 determines that it does have a ILS address, then processing proceeds to block 116. Without a ILS address, the originating unit has failed to identify a means for connecting the receiving unit, thus ending processing in block 114.
In block 116, originating unit disconnects its modem connection, if necessary, and connects to network channel. Block 116 continues the connection process in block 118. If originating unit has an IP address, then processing continue in block 124. On the other hand, without an IP address, then originating unit will perform a look up of the IP address for the receiving unit on a ILS server in block 120. Failure to obtain an IP address signifies a failure to connect, and thus ending the procedure in block 114. However, a successful look up results in an IP address that can be used to establish a connection in block 124. Block 124 establishes a connection to the receiving unit using the IP address, and the process is completed in block 126.
A flow chart showing an embodiment of the procedures encapsulated in the receiving module can be seen in FIG. 8. In this embodiment, the receiving unit utilizes the same modem to connect to the monitor channel and the network channel. Start block 200 begins processing in block 202. In block 202, the receiving unit conditions its modem for answering incoming calls. Decision block 204 then awaits for incoming calls. If there is an incoming call, then decision block 206 determines if the call is a request to establish a connection. For a request to establish a connection, processing continues in block 210; otherwise in block 208 the call can be passed off to another application program, if applicable, and subsequently returned to block 202.
Upon receiving a request to connect, receiving unit transmits its ILS address to originating unit and disconnects modem call in block 210. Receiving unit continues processing in block 212 by establishing a physical Internet connection and in block 214 by temporarily posting its IP address on a ILS server. Proceeding to block 216, the receiving unit then performs a “listening” function for receiving incoming requests to establish a connection. Decision block 218 determines whether the incoming request is received within a specified time limit. In block 220, the receiving unit verifies the identity of the timely request and completes establishes peer-to-peer connection. Upon completion of the communication session, processing continues at block 220.
Block 220 disconnects receiving unit from network channel. Processing is then returned to block 202 to recondition modem in anticipation of subsequent incoming calls.
The foregoing discloses and describes merely exemplary embodiments of the present invention. One skilled in the art will readily recognize from such discussion, and from the accompanying drawings and claims, that various changes, modifications and variations can be made therein without departing from the spirit and scope of the present invention.