[ovs-git] Open vSwitch: ofproto: Implement asynchronous OFPT_FLOW_MOD commands. (next)

dev at openvswitch.org dev at openvswitch.org
Fri May 27 21:23:48 UTC 2011


This is an automated email from the git hooks/post-receive script. It was
generated because a ref change was pushed to the repository containing
the project "Open vSwitch".

The branch, next has been created
        at  00436b751661c9013973ae574ef4d93e0d1ac413 (commit)

- Log -----------------------------------------------------------------
commit 00436b751661c9013973ae574ef4d93e0d1ac413
Author: Ben Pfaff <blp at nicira.com>
Date:   Fri May 27 14:22:44 2011 -0700

    ofproto: Implement asynchronous OFPT_FLOW_MOD commands.
    
    Some switching hardware takes a very long time to update its forwarding
    rules, up to hundreds of milliseconds.  It is undesirable for Open
    vSwitch to block waiting this long for individual OpenFlow flow table
    modification commands to complete.  This commit enables ofproto to queue
    up any number of independent flow table operations with asynchronous
    completion.
    
    I tested earlier versions of this commit using the "ofproto/clog" and
    "ofproto/unclog" commands that it implements in the software switch
    implementation.  I have not tested the current version very much at all.
    
    I'm looking for feedback on the interface and the implementation.
    
    I'm aware that this version leaks flows and operations when ofprotos are
    destroyed.  I'll fix that once I have a little more confidence that this
    is a good approach overall.
    
    CC: Casey Barker <crbarker at google.com>
    CC: Rajiv Ramanathan <rajivr at google.com>

commit d95f334933888508f427c33d2fb56e592826c136
Author: Ben Pfaff <blp at nicira.com>
Date:   Fri May 27 14:13:46 2011 -0700

    ofproto: Collect all rules for an OpenFlow request before acting on any.
    
    An upcoming commit adds support for asynchronous flow table modification.
    In an attempt to ensure that the software and hardware flow tables are
    properly in sync, that commit limits any given rule to a single outstanding
    operation at a time.  It does so by figuring out all of the rules that an
    OpenFlow request will affect before modifying any of them, and then
    deferring the request if it will affect any rules that have ongoing
    operations.  This commit is a step in that direction.

commit f01e87a67b342a6ed7504b11fea0fa5f138bd706
Author: Ben Pfaff <blp at nicira.com>
Date:   Thu May 26 16:49:10 2011 -0700

    ofp-util: New functions ofputil_actions_equal(), ofputil_actions_clone().
    
    I found that introducing these helper functions provided a very modest
    increase in readability.

commit c6634c43bb07ea72c11181ab72adb40911d8f478
Author: Ben Pfaff <blp at nicira.com>
Date:   Thu May 26 16:41:52 2011 -0700

    connmgr: New function ofconn_send_error().
    
    An upcoming commit will sometimes make connmgr responsible for sending
    error replies, so it's reasonable for it to have a function to do that.

commit 0a1cf1a5532fc5e412a6042961de4772330c78f8
Author: Ben Pfaff <blp at nicira.com>
Date:   Thu May 26 16:24:38 2011 -0700

    classifier: New function cls_rule_hash().
    
    An upcoming commit will introduce the first use.

commit 6d813eb218940a0ab2d0c4d9b27f04bb57d32edd
Author: Ben Pfaff <blp at nicira.com>
Date:   Thu May 26 16:23:21 2011 -0700

    flow: Give flow_wildcards_hash() a 'basis' parameter.
    
    An upcoming commit will add more interesting uses.

commit dd62d19c0fbf5d2561e4d20082b8347c5a491b5f
Author: Ben Pfaff <blp at nicira.com>
Date:   Thu May 26 15:54:10 2011 -0700

    ofproto: Better abstract flow stats encoding.

commit e098ac42fc97582931052c26106c7e1db5463ecf
Author: Ben Pfaff <blp at nicira.com>
Date:   Thu May 26 16:02:56 2011 -0700

    ofproto: Better abstract aggregate stats encoding and decoding.

commit 3a20050b764f255366de0d76e860b0020aca3a27
Author: Ben Pfaff <blp at nicira.com>
Date:   Tue May 24 13:32:20 2011 -0700

    openflow: Make stats replies more like other OpenFlow messages.

commit 41eb221e4f7b8916cfb66931faf03321c542657c
Author: Ben Pfaff <blp at nicira.com>
Date:   Tue May 24 13:30:04 2011 -0700

    nicira-ext: Separate nx_aggregate_stats_reply from ofp_aggregate_stats_reply.
    
    An upcoming patch will make stats messages much more like other messages,
    in that their structures will include all of the headers.  This means that
    struct ofp_aggregate_stats_reply will no longer be appropriate as a
    member of struct nx_aggregate_stats_reply, because it will then include
    those additional header members.
    
    Also, struct nx_aggregate_stats_reply doesn't need to use the special
    ovs_32aligned_be64 type, since its 64-bit members are correctly aligned,
    which is another reasonable reason to keep it separate.

commit c5817f5691e33d8774b8c58dae207033f1b4e70d
Author: Ben Pfaff <blp at nicira.com>
Date:   Mon May 23 16:07:22 2011 -0700

    openflow: Merge ofp_flow_stats_request and ofp_aggregate_stats_request.

commit 448b9634011c6c79c4b3247640599b0065523e23
Author: Ben Pfaff <blp at nicira.com>
Date:   Thu May 26 09:34:05 2011 -0700

    openflow: Remove 'body' member from struct ofp_stats_msg.
    
    This member does not actually help with anything.

commit 44fcb4cb26e30efd17f5063d09c6af9b5a9ec18b
Author: Ben Pfaff <blp at nicira.com>
Date:   Thu May 26 09:30:25 2011 -0700

    openflow: Merge ofp_stats_request and ofp_stats_reply.
    
    These structures for OpenFlow stats requests and replies have identical
    memebers, but until now they have been separate structures.  Since in some
    cases we actually want to treat both of them the same way, this has led
    to various kinds of awkwardness.  This commit merges them into a new
    "struct ofp_stats_msg" and fixes up the users.

commit 7ca8d4db4901f0b81d50654b101f7ee0081aaf25
Author: Ben Pfaff <blp at nicira.com>
Date:   Fri May 20 16:37:52 2011 -0700

    ofproto: Correctly fill in table_id in NXST_FLOW replies.

-----------------------------------------------------------------------


hooks/post-receive
-- 
Open vSwitch



More information about the git mailing list