SORT BY:

LIST ORDER
THREAD
AUTHOR
SUBJECT


SEARCH

IPS HOME


    [Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

    Re: Concensus Call on Urgent Pointer.



    
    
    Clive,
    
    Interesting.  It may keep you from having to add memory to the card but
    then you have to put the data in temporary memory on the host and, if it is
    a client, move it to where it belongs by copy.
    You can't claim that you avoid the copy - or at least not for general
    purpose applications.
    
    Julo
    
    
    Clive Philbrick <clive@alacritech.com> on 21/11/2000 00:55:29
    
    Please respond to Clive Philbrick <clive@alacritech.com>
    
    To:
    cc:   ips@ece.cmu.edu
    Subject:  Re: Concensus Call on Urgent Pointer.
    
    
    
    
    The only useful point I can add to this discussion is that as long as there
    are
    alternatives to the URGENT mechanism, it seems to be unnecessary or even
    unfair,
    to make it mandatory. Using DRAM on the card with or without
    overcommittment is
    at least one alternative.
    The solution used by an Alacritech card, which may be proprietary, involves
    a
    mechanism whereby control of the offloaded TCP connection can be flipped
    between
    the card and the host stack. Who ever has control at any given time does
    all the
    TCP processing for it while it is under their control. The huge majority of
    the
    time the connection is under control of the card. If a dropped frame causes
    an
    out-of-order frame to arrive on an offloaded connection, the card handles
    the
    situation by holding the frame, flipping control of the connection to the
    host
    and forwarding the frame to the host stack as a normal dumb NIC. Then the
    host
    stack handles that frame and all subsequent frames on that connection  (TCP
    reasembly) until the retrans occurs and the connection is back in sync.
    Then he
    flips the connection back to the card. The net result is that the card will
    not
    need to buffer much data on that connection - the frames are forwarded to
    the
    host. It also means the host will need to copy a usually-small number of
    frames'
    data to user buffers during sync-up. The point is the reassembly queue is
    in
    host memory.
    
    I just want to reiterate: regardless of what criticisms may be raised
    against
    this mechanism, it is an alternative to using the URGENT flag. This is not
    to
    say a subsequent modification would not be to use the URGENT flag and
    handle the
    OOO frame entirely on the card - if it became clear it was needed for
    performance.
    
    Clive Philbrick
    
    
    
    
    


Home

Last updated: Tue Sep 04 01:06:21 2001
6315 messages in chronological order