Patent 7702742
Obviousness
Combinations of prior art that suggest the claimed invention would have been obvious under 35 U.S.C. § 103.
Active provider: Google · gemini-2.5-flash
Obviousness
Combinations of prior art that suggest the claimed invention would have been obvious under 35 U.S.C. § 103.
Obviousness Analysis under 35 U.S.C. § 103 for US Patent 7,702,742
This analysis identifies combinations of prior art references that would render the claims of US Patent 7,702,742 obvious to a person having ordinary skill in the art (PHOSITA) as of the priority date of January 18, 2005. The motivation for combining these references stems from the known problem of enabling cost-effective and efficient remote programmed I/O over commodity lossy networks, a problem explicitly articulated in the patent's background.
Problem Addressed by the Invention
The patent acknowledges that while distributed computing systems benefit from remote memory access via programmed I/O, standard commodity networks like Ethernet are "lossy" (i.e., they may drop or reorder packets). This inherent unreliability prevents them from meeting the processor's two main expectations for memory transactions: (1) MTMs must be processed in an order consistent with the processor bus protocol, and (2) MTMs cannot be dropped or ignored. Proprietary networks (e.g., SCI, DEC memory channel) previously used for this purpose were expensive, non-standard, and incompatible. The invention aims to overcome these limitations by providing a mechanism to enable remote programmed I/O across lossy networks.
Elements of Independent Claims (Claims 1, 11, and 19)
The independent claims describe a system, method, or network interface with the following key functionalities:
- Receiving Memory Transaction Messages (MTMs) from a local memory controller, conforming to a processor bus protocol.
- Determining MTMs are destined for a particular remote node.
- Determining a transaction type for each MTM (e.g., posted request, non-posted request, response).
- Composing network packets to encapsulate MTM information.
- Assigning a sending priority to each network packet based on the MTM's transaction type and the ordering rules of the processor bus protocol.
- Organizing network packets into groups (e.g., queues) based on sending priority.
- Sending the network packets into a lossy network, with the sending order determined, at least partially, by their priorities.
- Ensuring that at least a subset of network packets having a particular sending priority are received by the remote node in a proper sequence (e.g., using sequence numbers, acknowledgements, and retransmitting unacknowledged packets and all subsequent packets within that priority stream).
Prior Art Landscape and PHOSITA Knowledge (as of 2005)
A PHOSITA in 2005 would possess knowledge in several relevant technical areas, many of which are explicitly or implicitly referenced in the patent:
- Processor Bus Protocols (Reference A): Standard computer architecture and bus specifications (e.g., PCI, PCI Express, or CPU vendor specifications) would disclose different types of memory transaction messages (e.g., posted writes, non-posted reads, responses) and their associated ordering rules, as summarized in FIG. 4 of the patent.
- Remote Memory Access / Distributed Shared Memory (DSM) (Reference B): Techniques for accessing memory on a remote node as if it were local were known, including mapping remote memory into a local address space and encapsulating memory requests into network messages. The patent specifically mentions proprietary solutions like SCI (Scalable Coherent Interface, IEEE Std 1596-1992) and DEC Memory Channel as prior art in this domain.
- Lossy Networks (e.g., Ethernet): The characteristics of commodity networks like Ethernet, including their propensity to drop or reorder packets, were well-understood.
- Network Quality of Service (QoS) (Reference C): Mechanisms for prioritizing network traffic, such as priority queuing, weighted fair queuing, and differentiated services (DiffServ, e.g., IETF RFCs 2474, 2475 from 1998; IEEE 802.1p for Layer 2 priority), were well-established for managing traffic in networks, including those that are lossy.
- Reliable Data Transfer Protocols (ARQ) (Reference D): Fundamental networking protocols like TCP (Transmission Control Protocol) provided robust mechanisms for ensuring reliable, in-order delivery of data over unreliable underlying networks using sequence numbers, acknowledgements, and retransmission strategies (e.g., Go-Back-N or Selective Repeat, as described in standard networking textbooks). The patent's "Prior art keywords" include "network," "queue," "packet," "packets," and "sending," all pointing to general networking concepts.
Obviousness Argument: Combination of References
A PHOSITA, motivated by the desire to leverage inexpensive, commodity lossy networks (e.g., Ethernet) for remote programmed I/O, thereby avoiding the high cost and incompatibility of proprietary solutions, would have found it obvious to combine the teachings of References A, B, C, and D as follows:
Establishing Remote Memory Access (Elements 1, 2, 4):
- Reference B would teach a PHOSITA how to implement remote memory access, including receiving MTMs at a local component (e.g., a network interface), determining their remote destination, and encapsulating them into network packets for transmission. This addresses the foundational aspects of extending local memory access to a remote node.
Mapping Processor Bus Priorities to Network Priorities (Elements 3, 5, 6, 7):
- Recognizing that processor bus protocols (Reference A) dictate strict ordering rules based on MTM transaction types (e.g., posted requests often bypass other transaction types, as illustrated in FIG. 4), and that a processor expects these rules to be upheld even for remote memory access, a PHOSITA would be motivated to preserve this ordering across the network.
- Knowing that network QoS mechanisms (Reference C) provide the capability to assign priorities to packets and implement priority-based queuing and sending, it would be an obvious design choice to map the established processor bus MTM priorities (e.g., posted request > response > non-posted request) directly to network packet sending priorities. This mapping ensures that the relative ordering expected by the processor for different transaction types is reflected in the network's packet transmission order. For instance, packets encapsulating posted write MTMs (highest bus priority) would be assigned the highest network priority and sent first from priority-based queues (Reference C).
Ensuring Reliable and In-Order Delivery Per Priority (Element 8):
- Since the target network is "lossy" and cannot guarantee delivery or in-order arrival (as per general knowledge), a PHOSITA would naturally turn to reliable data transfer protocols (Reference D).
- To meet the processor's expectation that MTMs are not dropped and are processed in order, a PHOSITA would find it obvious to apply an Automatic Repeat Request (ARQ) mechanism. Given that packets are now prioritized and queued (as per Reference C and the mapping in point 2), a PHOSITA would recognize the need to ensure in-order delivery within each priority stream. This is crucial because processing an out-of-order memory transaction can lead to serious errors like data coherency issues or deadlocks, as noted in the patent.
- A common ARQ strategy, such as a Go-Back-N approach where a timed-out packet and all subsequent packets in its stream are retransmitted, would be an obvious choice to ensure strict sequential delivery for that specific priority stream. The use of linked-lists to track sent but unacknowledged packets within each priority group (as described in FIGS. 8 and 9 of the patent) is a conventional data structure for managing such ARQ retransmission buffers (Reference D). Similarly, the remote node's behavior of dropping out-of-sequence packets until the expected one arrives is a known method to enforce strict ordering for applications requiring it (Reference D).
By combining these known elements—processor bus protocol semantics, remote memory access techniques, network QoS, and reliable data transfer protocols—a PHOSITA would arrive at the claimed invention as an obvious solution to the long-standing problem of efficiently and reliably conducting remote programmed I/O over commodity lossy networks, thereby achieving the desired goals of cost-effectiveness and compatibility.
Generated 5/31/2026, 6:49:11 PM