Patent ID: 7818475

Claim:
A method for writing to a mirrored target, comprising: receiving a data unit at an ingress processing unit and multi-casting a message to a first egress processing unit and a second egress processing unit, said message including said data unit and sequencing information; providing said data unit with a first sequence number to a first data store comprising said first egress processing unit calculating said first sequence number based on sequencing information and a transfer size for said first data store, and said first egress processing unit sending said first sequence number and said data unit to said first data store; and providing said data unit with a second sequence number to a second data store comprising said second egress processing unit calculating a second sequence number based on sequencing information and a transfer size for said second data store, and said second egress processing unit sending said second sequence number and said data unit to said second data store, wherein said receiving a data unit further includes said ingress processing unit determining a value of a running frame count at a beginning of a sequence from an initiator; said sequencing information includes said value of said running frame count at said beginning of said sequence from said initiator and a data frame sequence count for said data unit; said first egress processing unit calculating said first sequence number includes said first egress processing unit calculating a value of said running frame count at a beginning of a sequence for said first data store; said first sequence number is calculated by said first egress processing unit by subtracting said value of said running frame count at said beginning of said sequence for said first data store from said value of said running frame count at said beginning of said sequence from said initiator and adding said data frame sequence count for said data unit; said second egress processing unit calculating said second sequence number includes said second egress processing unit calculating a value of said running count at a beginning of a sequence for said second data store; and said second sequence number is calculated by said second egress processing unit by subtracting said value of said running count at said beginning of said sequence for said second data store from said value of said running frame count at said beginning of said sequence from said initiator and adding said data frame sequence count for said data unit.