Network interface and protocol
First Claim
1. An apparatus comprising:
- a communication interface for providing an interface between a data link and a data processor, the data processor being configured to support an operating system, a virtual address space and one or more logical data ports, the logical data ports existing within the operating system, the communication interface comprising at least one of a processor and circuitry to;
apply first data received over the link and addressed to one of said one or more logical data ports to a first queue associated with the said one logical data port, said first queue being located in the virtual address space,analyse said first data to determine whether said first data meets one or more predefined criteria, wherein one of the predefined criteria is that the handling of said first data directed to said one logical data port is blocked,determine, based on said analysis, that the handling of said first data directed to the said one logical data port is blocked, andin response to determining that the handling of said first data directed to the said one logical data port is blocked, i) generate a message indicating the said one logical data port, ii) apply the message to a second queue located in the address space of the operating system and iii) transmit an interrupt to the operating system, said address space of said first queue being different to that of the second queue, and in response to determining that the handling of said first data directed to the said one logical data port is not blocked, handling the first data without the operating system.
9 Assignments
0 Petitions
Accused Products
Abstract
A communication interface for providing an interface between a data link and a data processor, the data processor being capable of supporting an operating system and a user application, the communication interface being arranged to: support a first queue of data received over the link and addressed to a logical data port associated with a user application; support a second queue of data received over the link and identified as being directed to the operating system; and analyze data received over the link and identified as being directed to the operating system or the data port to determine whether that data meets one or more predefined criteria, and if it does meet the criteria transmit an interrupt to the operating system.
-
Citations
22 Claims
-
1. An apparatus comprising:
-
a communication interface for providing an interface between a data link and a data processor, the data processor being configured to support an operating system, a virtual address space and one or more logical data ports, the logical data ports existing within the operating system, the communication interface comprising at least one of a processor and circuitry to; apply first data received over the link and addressed to one of said one or more logical data ports to a first queue associated with the said one logical data port, said first queue being located in the virtual address space, analyse said first data to determine whether said first data meets one or more predefined criteria, wherein one of the predefined criteria is that the handling of said first data directed to said one logical data port is blocked, determine, based on said analysis, that the handling of said first data directed to the said one logical data port is blocked, and in response to determining that the handling of said first data directed to the said one logical data port is blocked, i) generate a message indicating the said one logical data port, ii) apply the message to a second queue located in the address space of the operating system and iii) transmit an interrupt to the operating system, said address space of said first queue being different to that of the second queue, and in response to determining that the handling of said first data directed to the said one logical data port is not blocked, handling the first data without the operating system. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 20, 21)
-
-
17. A data processing system comprising:
-
an operating system; a virtual address space; a logical data port being associated with the virtual address space and existing within the operating system; and a communication interface for providing an interface between a data link and the data processing system, the communication interface comprising at least one of a processor and circuitry to; (i) apply data received over the link and addressed to the logical data port to a first queue associated with the logical data port and located in the virtual address space; (ii) analyse the received data to determine whether the received data meets one or more predefined criteria wherein one of the predefined criteria is that the handling of data directed to the logical data port is blocked; and in response to determining that the handling of data directed to the said one logical data port is blocked; (iii) generate a message indicating the said one logical data port; (iv) apply the message to a second queue located in the address space of the operating system; and (v) transmit an interrupt to the operating system, wherein said at least one of a processor and circuitry being further arranged to handle the first data without the operating system if the handling of said data directed to the said one logical data port is not blocked, and said address space of the first queue being different to that of the second queue. - View Dependent Claims (18, 19)
-
-
22. An apparatus comprising:
-
a communication interface for providing an interface between a data link and a data processor, the data processor being capable of supporting an operating system and a user application, the communication interface comprising at least one of a processor and circuitry to; apply first out of band data received over the link and addressed to one of said one or more logical data ports to a first queue associated with the said one logical data port, said first queue being located in the address space of the user application, said first queue being an out of band queue; determine if the handling of said first out of band data directed to the said one logical data port is blocked; and in response to determining that the handling of said first data directed to the said one logical data port is blocked, generate a message indicating the said one logical data port, apply the message to a second queue located in the address space of the operating system and additionally transmit an interrupt to the operating system, said address space of said first out of band data queue being different to that of the second queue, and if the handling of the first data directed to the said one logical port is not blocked, handling the first data by the first application.
-
Specification