Application programming interfaces and methods enabling a...

Electrical computers and digital processing systems: multicomput – Computer network managing

Reexamination Certificate

Rate now

  [ 0.00 ] – not rated yet Voters 0   Comments 0

Details

C709S229000

Reexamination Certificate

active

06708210

ABSTRACT:

COPYRIGHT NOTICE
A portion of the disclosure of this patent document contains material which is subject to copyright protection. The copyright owner has no objection to the xerographic reproduction by anyone of the patent document or the patent disclosure in exactly the form it appears in the U.S. Patent and Trademark Office patent file or records, but otherwise reserves all copyright rights whatsoever.
BACKGROUND OF THE INVENTION
The present invention is generally related to the networking field and more particularly to techniques for providing application user interfaces (APIs) for controlling the functionality of network processors.
The communication industry has experienced explosive growth stemming from increased demand for information and connectivity by both individual consumers and corporations. Due to the proliferation of the personal computer and the rise of communication networks, such as the Internet, there is an ever increasing need for faster communication between computers using efficient networks. In order to accommodate this explosive growth, carriers and backbone providers are rapidly introducing network infrastructures which offer exponentially more bandwidth and information carrying capacity than in the past.
In order to meet the growing demand for speed and bandwidth, network devices such as client computer systems, servers, hubs, routers, switches, network backbones, network processors, etc., are being forced to offer a wide range of services to meet consumer demands. These network processors have to be capable of supporting a plethora of emerging communication standards, transport protocols, and increased performance requirements. These network processors also have to perform a plurality of tasks such as performing translation between different network standards such as Ethernet and Asynchronous Transfer Mode (ATM), reformatting of data, traffic scheduling, routing of data cells, packets, messages, etc.
Although network processors now provide more services, the success or failure of these network processors depends largely on how easily they can be integrated with and controlled by a host device such as a computer. Due to the differing requirements of host applications, it is desired that the network processors provide facilities to perform control functions and network management functions both at a higher level of control and also at a more granular device level. Further, it is desired that the network processors provide facilities allowing host applications to make full use of the resources and services offered by the various existing and emerging networking standards.
SUMMARY OF THE INVENTION
According to the teachings of the present invention, techniques are provided for controlling a network processor and for facilitating integration of the network processor with a host system or an application executing on the host system. The present invention provides application programming interfaces (APIs) which can be invoked by the host system or the host application for performing functions on the network processor. The APIs provided by the present invention allow a host to efficiently use resources and services offered by the network processor.
According to an aspect of the present invention, upper level APIs are provided which allow a host to control the network processor and also perform various network data manipulation functions. The APIs are intended to encapsulate as much as possible the underlying messaging between the host system and the network processor and to hide the low device level command details from the host. In one embodiment, the APIs may be mapped to one or more device level APIs.
According to another aspect of the present invention, the APIs are provided by a upper level program module. A host may invoke an API which is then communicated by the program module to the network processor where functions corresponding to the API are performed. Responses to the APIs may be forwarded synchronously or asynchronously back to the host. In one embodiment of the present invention, asynchronous callback functions, invoked in response to the API calls are used to forward responses to the host.
According to yet another aspect of the present invention, the APIs allow a host to configure and monitor a network processor in the control plane, and to send or receive network data in the data plane. Examples of APIs include APIs for system initialization and configuration, physical layer hardware management functions, ATM signaling, ILMI and related functions, LANE related functions, bridging functions, system facilities functions, system diagnostics, network management functions, and statistics gathering functions. APIs are also provided for performing functions related to upper layer software protocol stacks such as MPOA protocol stack, LANE protocol stack, and IP over ATM protocol stack.
Other aspects and advantages of the invention will be better understood by reference to the following detailed description and the accompanying figures. dr
BRIEF DESCRIPTION OF THE DRAWINGS
FIG. 1
depicts a simplified block diagram of a network processor according to an embodiment of the present invention;
FIG. 2
depicts a simplified block diagram of the general architecture of a processing engine subsystem according to an embodiment of the present invention;
FIG. 3A
is a schematic diagram illustrating one embodiment of an interface between a host system and the network processor of
FIG. 1
;
FIG. 3B
is a schematic diagram illustrating another embodiment of an interface between a host system and the network processor of
FIG. 1
;
FIG. 3C
is a schematic diagram illustrating a further embodiment of an interface between a host system and the network processor of
FIG. 1
;
FIG. 3D
is a schematic diagram illustrating yet another embodiment of an interface between a host system and the network processor of
FIG. 1
;
FIG. 4A
is a schematic diagram illustrating one embodiment of an upper layer software protocol stack that may utilize one or more APIs;
FIG. 4B
is a schematic diagram illustrating another embodiment of an upper layer software protocol stack that may utilize one or more APIs:
FIG. 4C
is a schematic diagram illustrating a further embodiment of an upper layer software protocol stack that may utilize one or more APIs:
FIG. 5
depicts a simplified block diagram of memory buffers provided by a host system and a network processor for exchanging information according to an embodiment of the present invention; and
FIG. 6
depicts an exemplary memory structure used for encapsulating a command written to the memory buffers according to an embodiment of the present invention.


REFERENCES:
patent: 4024507 (1977-05-01), Berkling et al.
patent: 4586134 (1986-04-01), Norstedt
patent: 4700294 (1987-10-01), Haynes
patent: 5218687 (1993-06-01), Ducousso et al.
patent: 5287537 (1994-02-01), Newmark et al.
patent: 5295135 (1994-03-01), Kammerl
patent: 5379297 (1995-01-01), Glover et al.
patent: 5394402 (1995-02-01), Ross
patent: 5414707 (1995-05-01), Johnston et al.
patent: 5481536 (1996-01-01), Reisch et al.
patent: 5515370 (1996-05-01), Rau
patent: 5517488 (1996-05-01), Miyazaki et al.
patent: 5535201 (1996-07-01), Zheng
patent: 5539729 (1996-07-01), Bodnar
patent: 5555256 (1996-09-01), Calamvokis
patent: 5555265 (1996-09-01), Kakuma et al.
patent: 5564051 (1996-10-01), Halliwell et al.
patent: 5574875 (1996-11-01), Stansfield et al.
patent: 5590128 (1996-12-01), Maloney et al.
patent: 5619650 (1997-04-01), Bach et al.
patent: 5638371 (1997-06-01), Raychaudhuri et al.
patent: 5640399 (1997-06-01), Rostoker et al.
patent: 5652872 (1997-07-01), Richter et al.
patent: 5659794 (1997-08-01), Caldarale et al.
patent: 5664116 (1997-09-01), Gaytan et al.
patent: 5684797 (1997-11-01), Aznar et al.
patent: 5684954 (1997-11-01), Kaiserswerth et al.
patent: 5696930 (1997-12-01), Garetz et al.
patent: 5701300 (1997-12-01), Jeon et al.
patent: 5726985 (1998-03-01), Daniel et al.
patent: 5740171 (1998-04-01), Mazzola et al.
patent: 5742772 (1998-04-01), Sreenan
patent: 5745477 (1998-04-

LandOfFree

Say what you really think

Search LandOfFree.com for the USA inventors and patents. Rate them and share your experience with other people.

Rating

Application programming interfaces and methods enabling a... does not yet have a rating. At this time, there are no reviews or comments for this patent.

If you have personal experience with Application programming interfaces and methods enabling a..., we encourage you to share that experience with our LandOfFree.com community. Your opinion is very important and Application programming interfaces and methods enabling a... will most certainly appreciate the feedback.

Rate now

     

Profile ID: LFUS-PAI-O-3272488

  Search
All data on this website is collected from public sources. Our data reflects the most accurate information available at the time of publication.