1460900167-49781f17-1fe7-4918-bd94-cfd6dc544187

1. A system for delivering content objects over the Internet to end-user systems using a cooperative delivery system, the system comprising:
an edge server configured to receive a first request, wherein:
the first request is to deliver a first content object;
the edge server is part of a first network;
the first network is a content delivery network having a plurality of points of presence (POP);
the plurality of POPs are distributed geographically;
the first network is managed by a first entity; and
the first request is received from a first end-user system;

a network interface configured to receive a second request, wherein:
the network interface is part of the first network;
the second request is to deliver a second content object;
the second request is received from a second network;
the second network is contracted by a content provider to deliver the second content object;
the second network is managed by a second entity;
the first entity is different from the second entity; and

an assignment engine configured to:
assign the first network to deliver the first content object to the first end-user system; and
assign a third network to deliver the second content object to a second end-user system, wherein:
the third network is managed by a third entity;
the third entity is different from the first entity; and
the first network receives a report that the second content object was delivered to the second end-user system.
2. The system for delivering content objects over the Internet to end-user systems using a cooperative delivery system as recited in claim 1, wherein:
the third network reports to a fourth entity delivery of the second content object to the second end-user system;
the fourth entity is different from the first entity; and
and the fourth entity reports delivery of the second content object to the first network.
3. The system for delivering content objects over the Internet to end-user systems using a cooperative delivery system as recited in claim 1, wherein the second network is a content delivery network having a plurality of POPs distributed geographically.
4. The system for delivering content objects over the Internet to end-user systems using a cooperative delivery system as recited in claim 1, wherein both the second network and the third network are terminal networks, providing Internet service to end-user systems.
5. The system for delivering content objects over the Internet to end-user systems using a cooperative delivery system as recited in claim 1, wherein the assignment engine is further configured to:
determine a quality of service between the first network and the second end-user system;
determine a quality of service between the third network and the second end-user system; and
transfer the second request to the third network based on the third network having a better quality of service to the second end-user system than the first network.
6. The system for delivering content objects over the Internet to end-user systems using a cooperative delivery system as recited in claim 1, wherein the assignment engine is further configured to:
determine a latency between the first network and the second end-user system; and
determine to transfer the second request to the third network based on the latency between the first network and the second end-user system crossing a certain threshold.
7. The system for delivering content objects over the Internet to end-user systems using a cooperative delivery system as recited in claim 1, wherein:
the third network subcontracts, to a fourth network, delivery of the second content object to the second end-user system; and
the fourth network delivers the second content object to the second end-user system.
8. A method for delivering content objects over the Internet to end-user systems using a cooperative delivery system, the method comprising:
receiving a first request, wherein:
the first request is to deliver a first content object;
the first request is received at a first network;
the first network is a content delivery network (CDN);
the first network is contracted by a first content originator to deliver the first content object;
the first network is managed by a first entity; and
the first request is received by the first network from a first end-user system;

receiving a second request, wherein:
the second request is to deliver a second content object;
the second request is received from a second network;
the second request originated from a second end-user system;
the second network is contracted by a second content originator to deliver the second content object;
the second network is managed by a second entity; and
the second entity is different from the first entity;

delivering, from the first network, the second content object to the second end-user system;
transferring the first request to a third network, wherein:
the third network is managed by a third entity; and
the third entity is different from the first entity; and

receiving a report that the first content object was delivered to the first end-user system.
9. The method for delivering content objects over the Internet to end-user systems using the cooperative delivery system as recited in claim 8, further comprising:
receiving compensation for delivery of the first content object; and
providing compensation to the third network for delivery of the first content object.
10. The method for delivering content objects over the Internet to end-user systems using the cooperative delivery system as recited in claim 8, further comprising:
determining a quality of service between the first network and the first end-user system;
determining a quality of service between the third network and the first end-user system; and
transferring the first request to the third network based on the third network having a better quality of service than the first network.
11. The method for delivering content objects over the Internet to end-user systems using the cooperative delivery system as recited in claim 8, wherein the second network andor the third network is a terminal network, providing Internet service to end-user systems.
12. The method for delivering content objects over the Internet to end-user systems using the cooperative delivery system as recited in claim 8, further comprising:
determining a latency between the first network and the first end-user system; and
determining to transfer the first request to the third network based on the latency crossing a threshold value.
13. The method for delivering content objects over the Internet to end-user systems using the cooperative delivery system as recited in claim 8, further comprising:
determining a delivery cost between the first network and the first end-user system;
determining a delivery cost between the third network and the first end-user system;
determining the third network can deliver the first content object to the first end-user system for a cost less than the first network;
transferring the first request from the first network to the third network based on delivery cost of the third network being less than the delivery cost of the second network.
14. A computer-memory device having instructions that when executed perform the following steps for delivering a content object in a cooperative delivery system:
receive a first request, wherein:
the first request is to deliver a first content object;
the first request is received at a first network;
the first network is a content delivery network (CDN);
the first network is contracted by a first content originator to deliver the first content object;
the first network is managed by a first entity; and
the first request is received by the first network from a first end-user system;

receive a second request, wherein:
the second request is to deliver a second content object;
the second request is received from a second network;
the second request originated from a second end-user system;
the second network is contracted by a second content originator to deliver the second content object;
the second network is managed by a second entity; and
the second entity is different from the first entity;

deliver, from the first network, the first content object to the first end-user system;
transfer the second request to a third network, wherein:
the third network is managed by a third entity; and
the third entity is different from the first entity; and

receive a report that the second content object was delivered to the second end-user system.
15. The computer-memory device having instructions for delivering the content object in a cooperative delivery system as recited in claim 14, wherein:
the third network subcontracts delivery of the second content object to the second end-user system to a fourth network; and
the fourth network delivers the second content object to the second end-user system.
16. The computer-memory device having instructions for delivering the content object in a cooperative delivery system as recited in claim 15, wherein the third network passes control parameters to the fourth network that stipulate a minimum quality of service in delivering the second content object.
17. The computer-memory device having instructions for delivering the content object in a cooperative delivery system as recited in claim 14, the instructions, that when executed, further:
receive a third request, wherein:
the third request is to deliver a third content object;
the third request originated from a third end-user system; and
the third request is received from the second network; and

deliver, using the first network, the third content object to the third end-user system in response to the third request.
18. The computer-memory device having instructions for delivering the content object in a cooperative delivery system as recited in claim 17, wherein the third end-user system is the same as the second end-user system.
19. The computer-memory device having instructions for delivering the content object in a cooperative delivery system as recited in claim 14, the instructions, that when executed, further:
determine a latency between the first network and the second end-user system; and
determine to transfer the second request to the third network based on the latency crossing a certain threshold.
20. The computer-memory device having instructions for delivering the content object in a cooperative delivery system as recited in claim 14, the instructions, that when executed, further:
determine a delivery cost between the first network and the second end-user system;
determine a delivery cost between the third network and the second end-user system;
determine the third network can deliver the second content object to the second end-user system for a cost less than the first network; and
transfer the second request from the first network to the third network based on delivery cost of the third network being less than the delivery cost of the second network.

The claims below are in addition to those above.
All refrences to claim(s) which appear below refer to the numbering after this setence.

1. A method for setting computer-working-hours-based shutdown options, comprising:
when receiving a shutdown command from a user, determining, based on a setting of computer working hours by the user, whether a current time of the system is within the working hours of the computer; and
performing at least one of setting a shutdown option according to the determination result and presenting a shutdown option according to the determination result.
2. The method according to claim 1, further comprising:
receiving and storing permanently the setting of computer working hours by the user.
3. The method according to claim 1, wherein \u201crestart\u201d is the shutdown option when the current system time is within the set computer working hours, and wherein \u201cshutdown\u201d is the shutdown option when the current system time is not within the set computer working hours.
4. The method according to claim 2, wherein receiving and permanently storing further comprises:
providing to the user a user interface for setting computer working hours; and
receiving from the user interface and permanently storing the setting of computer working hours by the user.
5. The method according to claim 1, wherein the determination further comprises:
obtaining the current system time;
obtaining the setting of the computer working hours by the user, which is permanently stored; and
comparing the current system time with the computer working hours set by the user to make a determination.
6. The method according to claim 1, further comprising:
receiving and permanently storing a working-hours-based rule set by the user; and
performing at least one of setting a shutdown option according to the working-hours-based rule and the determination result and presenting a shutdown option according to the working-hours-based rule and the determination result.
7. An apparatus for setting computer-working-hours-based shutdown options, comprising:
means for, when receiving a shutdown command from a user, determining, based on a setting of the computer working hours by the user, whether a current time of the system is within the working hours of the computer; and
means for performing at least one of setting a shutdown option according to the determination result and presenting a shutdown option according to the determination result.
8. The apparatus according to claim 7, further comprising:
means for receiving and storing permanently the setting of computer working hours by the user.
9. The apparatus according to claim 7, wherein \u201crestart\u201d is the shutdown option when the current system time is within the set computer working hours, and wherein \u201cshutdown\u201d is the shutdown option when the current system time is not within the set computer working hours.
10. The apparatus according to claim 8, wherein the means for receiving and permanently storing is configured to:
provide to the user a user interface for setting computer working hours;
receive from the user interface the setting of computer working hours by the user; and
permanently store the setting of computer working hours by the user.
11. The apparatus according to claim 7, wherein the means for determining comprises:
means for obtaining the current system time;
means for obtaining the setting of computer working hours by the user, which is permanently stored; and
means for comparing the current system time with the computer working hours set by the user to make a determination.
12. The apparatus according to claim 8, wherein the means for receiving and permanently storing is further configured to receive and permanently store a working-hours-based rule set by the user; and wherein the means for performing is configured to perform at least one of setting a shutdown option according to the working-hours-based rule and the determination result and presenting a shutdown option according to the working-hours-based rule and the determination result.
13. A computer program product stored on a computer readable medium, which when executed, sets computer-working-hours-based shutdown options, the computer readable medium comprising program code for:
when receiving a shutdown command from a user, determining, based on a setting of computer working hours by the user, whether a current time of the system is within the working hours of the computer; and
performing at least one of setting a shutdown option according to the determination result and presenting a shutdown option according to the determination result.