An extended OpenFlow protocol-based resource control method used for both query and release of an idle forwarding resource, when some forwarding resources need to be allocated for use by a service on a forwarder and some forwarding resources need to be allocated for use by a service on a controller, wherein an OpenFlow interface is established between the controller and the forwarder, comprises the steps of: sending, by the controller, a resource allocation request message to a forwarder,; receiving, by the controller, the resource configuration message from the forwarder, wherein the resource configuration message is sent by the forwarder in response to the resource allocation request message, and the resource configuration message comprises the idle forwarding resource obtained by the forwarder from total forwarding resources; and allocating, by the controller according to the idle forwarding resource, a service-accessible forwarding resource to an already created service on the controller, wherein the service-accessible forwarding resource is some or all resources in the idle forwarding resource, wherein the allocating comprises: storing the idle forwarding resource included in the resource configuration message into a resource pool; and obtaining the idle forwarding resource from the resource pool and allocating the idle forwarding resource to the already created service on the controller, and wherein subsequent to allocating the resource control method further performs: sending, by the controller, a resource release request message, to the forwarder, wherein the resource release request message includes the idle forwarding resource that need to be released, and that is determined by the controller, and adding, by the forwarder, to the total forwarding resource, the released idle forwarding resource; wherein multipart messages being a type of message in the OpenFlow protocol and used for interaction between the controller and the forwarder are extended to contain an added control field used to implement querying and returning the idle forwarding resource between the controller and the forwarder. sending, by the controller, a resource allocation request message to a forwarder,; receiving, by the controller, the resource configuration message from the forwarder, wherein the resource configuration message is sent by the forwarder in response to the resource allocation request message, and the resource configuration message comprises the idle forwarding resource obtained by the forwarder from total forwarding resources; and allocating, by the controller according to the idle forwarding resource, a service-accessible forwarding resource to an already created service on the controller, wherein the service-accessible forwarding resource is some or all resources in the idle forwarding resource, wherein the allocating comprises: storing the idle forwarding resource included in the resource configuration message into a resource pool; and obtaining the idle forwarding resource from the resource pool and allocating the idle forwarding resource to the already created service on the controller, storing the idle forwarding resource included in the resource configuration message into a resource pool; and obtaining the idle forwarding resource from the resource pool and allocating the idle forwarding resource to the already created service on the controller, and wherein subsequent to allocating the resource control method further performs: sending, by the controller, a resource release request message, to the forwarder, wherein the resource release request message includes the idle forwarding resource that need to be released, and that is determined by the controller, and adding, by the forwarder, to the total forwarding resource, the released idle forwarding resource; wherein sending, by the controller, a resource release request message, to the forwarder, wherein the resource release request message includes the idle forwarding resource that need to be released, and that is determined by the controller, and adding, by the forwarder, to the total forwarding resource, the released idle forwarding resource; wherein multipart messages being a type of message in the OpenFlow protocol and used for interaction between the controller and the forwarder are extended to contain an added control field used to implement querying and returning the idle forwarding resource between the controller and the forwarder.