1460716217-402a76bf-4e8f-4bcb-9145-5f84825b8975

1. A method of generating ions in a gas, comprising:
temporally controlling an electric field applied to the gas, including increasing the electric field so as to create ions in the gas during a plurality of first time periods, and lowering the electric field in a plurality of second time periods respectively following the first time periods, thereby preventing the formation of a plasma, corona or glow in the gas during the first and second time periods; and
maintaining the temporally controlling step so as to create a sustained flow of the gas due to the generation of ions oyer the elapsed first and second time periods.
2. A method of generating ions, comprising:
exposing a gas to an electric field that exceeds a breakdown strength corresponding to the gas;
permitting avalanches of electrons to sweep across the exposed gas so as to create ions;
reducing the electric field below the breakdown strength, thereby stopping the electron avalanches and the breakdown process and preventing the gas from becoming a glow, corona or plasma; and
repeating the exposing, permitting and reducing steps so as to create a sustained flow of the gas due to the repeated creation of ions.
3. A method according to claim 2, further comprising:
repeating the exposing, permitting and reducing steps in accordance with a pulsing frequency.
4. A method according to claim 2, further comprising:
providing a secondary electric field that causes the created ions and the gas to move in a desired direction during the reducing step.
5. A method according to claim 4, wherein the desired direction is through a channel of a heat sink.
6. An apparatus for creating ions, comprising:
a pair of electrodes separated by a gas gap;
a voltage source coupled to the electrodes; and
a resistor and capacitor coupled to the electrodes, wherein the resistor and capacitor temuorally control an amount of charge the voltage source provides to the electrodes so as to create short pulses of current across the gas gap, the short pulses of current generating ions.
7. An apparatus according to claim 6, wherein as the capacitor charges and discharges, the electric field across the gap increases and decreases past and below breakdown, respectively, thereby causing the ion generation process to repeat.
8. An apparatus according to claim 6, wherein the pulses are temporally controlled to prevent the formation of a destructive plasma or glow in the gas.
9. An apparatus according to claim 6, wherein the short pulses repeat at a radio frequency (RF) rate.
10. An apparatus according to claim 6, further comprising a third electrode that is coupled to a potential so as to attract the generated ions.
11. An apparatus according to claim 10, wherein the third electrode is disposed downstream from the gas gap so that the attracted ions cause the gas to flow across a heat source.
12. An apparatus according to claim 11, wherein the gas flows through a channel coupled to the heat source.
13. An apparatus according to claim 6, wherein the resistor and capacitor are constituted by a thin dielectric covering on one of the electrodes.
14. An apparatus according to claim 6, wherein the electrodes are comprised of sharp electrodes with tip radii between 1 and 50 nm.
15. An apparatus according to claim 14, wherein the electrodes are separated by about 100 \u03bcm.
16. An apparatus according to claim 6, wherein the voltage source is a direct current (DC) voltage source.
17. An apparatus according to claim 6, wherein the resistor and capacitor define a time constant corresponding to a duration of the short pulses.
18. An apparatus according to claim 17, wherein the voltage source is a direct current (DC) voltage source and the resistor and capacitor further define a repetition frequency of the short pulses.
19. An apparatus according to claim 6, wherein the voltage source is an alternating current (AC) voltage source that alternates at a first frequency, and wherein the resistor and capacitor define a repetition frequency of the short pulses that is substantially higher than the first frequency.
20. An apparatus according to claim 18, wherein the repetition frequency is between approximately 1 kHz and 20 kHz.

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 comprising:
at a first switch in a network, receive a login request from a first endpoint device that is associated with a first FC identifier (FCID) that was previously assigned to the first endpoint device by another switch in the network;
responding to the login request with the first FCID;
assigning the first endpoint device a second FCID associated with a domain of the switch, wherein the second FCID is used as a proxy FCID within the network for the first endpoint device;
receiving a first frame from the first endpoint device with a source FCID comprising the first FCID and a destination FCID comprising an FCID for a second endpoint device;
overwriting the source FCID in the first frame with the second FCID such that the first frame is associated with the domain of the first switch domain after transmission from the first switch; and
forwarding the first frame to the second endpoint device.
2. The method of claim 1, further comprising:
receiving a second frame from another switch in the network with a destination FCID comprising the second FCID;
overwriting the destination FCID in the second frame with the first FCID; and
forwarding the second frame to the first endpoint device.
3. The method of claim 1, further comprising:
receiving a message from a second switch comprising information that indicates that the second endpoint device has been assigned a fourth FCID associated with a domain of the second switch that proxies for a third FCID that was previously assigned to the second endpoint by another switch in the network;
receiving a second frame from the second switch with a source FCID comprising the fourth FCID and a destination FCID comprising the second FCID;
overwriting the source FCID in the second frame with the third FCID and the destination FCID in the second frame with the first FCID; and
forwarding the second frame to the first endpoint device.
4. The method of claim 1, further comprising:
receiving a message from a second switch comprising information that indicates that the second endpoint device has been assigned a fourth FCID that proxies for a third FCID that was previously assigned to the second endpoint by another switch in the network;
receiving a second frame from the first endpoint device with a source FCID comprising the first FCID and a destination FCID comprising the third FCID;
overwriting the source FCID in the second frame with the second FCID and the destination FCID in the second frame with the fourth FCID; and
forwarding the second frame to the second endpoint device.
5. The method of claim 1, further comprising receiving a message that the first endpoint device has a pending migration to the first switch, wherein the message contains the first FCID.
6. The method of claim 1, further comprising looking up the first FCID in an FC name server database prior to responding to the login request with the first FCID.
7. The method of claim 1, further comprising:
receiving a port login request frame from the first endpoint device;
adding the second FCID to a vendor specific information field in the port login request frame; and
forwarding the port login request frame.
8. The method of claim 1, further comprising:
receiving a port login request frame from another endpoint device in the network;
extracting a proxy FCID from a vendor specific information field in the port login request frame, wherein the proxy FCID is used to overwrite source FCIDs for frames addressed to the first endpoint device; and
forwarding the port login request frame to the first endpoint device.
9. A method comprising:
at a first switch coupled to a first endpoint device and a second switch, wherein the second switch is coupled to a second endpoint device and has assigned the second endpoint device an original FCID, receiving a message from a third switch comprising information that indicates that the second endpoint device has been assigned a proxy FCID that is configured to proxy for the original FCID;
receiving a first frame from the third switch with a source FCID comprising the proxy FCID and a destination FCID comprising an FCID for the first endpoint device;
overwriting the proxy FCID in the first frame with the original FCID; and
forwarding the first frame to the first endpoint device.
10. The method of claim 9, further comprising:
receiving a second frame from the first endpoint device with a source FCID comprising the FCID for the first endpoint device and a destination FCID comprising the original FCID;
overwriting the original FCID in the second frame with the proxy FCID; and
forwarding the second frame to the second endpoint device.
11. An apparatus comprising:
one or more network interfaces configured to enable communication between devices in a network;
switch hardware configured to facilitate the communication between devices; and
a processor configured to be coupled to the one or more network interfaces and the switch hardware, and configured to:
receive a login request via the one or more network interfaces from a first endpoint device that is associated with a first FC identifier (FCID) that was previously assigned to the first endpoint device;
respond to the login request with the first FCID;
assign the first endpoint device a second FCID associated with a domain of the switch, wherein the second FCID is used as a proxy FCID within the network for the first endpoint device;
receive a first frame from the first endpoint device with a source FCID comprising the first FCID and a destination FCID comprising an FCID for a second endpoint device;
overwrite the source FCID in the first frame with the second FCID using the switch hardware such that the first frame is associated with the domain of the first switch domain after transmission from the first switch; and
forward the first frame to the second endpoint device via the one or more network interfaces.
12. The apparatus of claim 11, wherein the processor is further configured to:
receive a second frame from another switch in the network with a destination FCID comprising the second FCID;
overwrite the destination FCID in the second frame with the first FCID; and
forward the second frame to the first endpoint device.
13. The apparatus of claim 11, wherein the processor is further configured to:
receive a message from a second switch comprising information that indicates that the second endpoint device has been assigned a fourth FCID associated with a domain of the second switch that proxies for a third FCID that was previously assigned to the second endpoint by another switch in the network;
receive a second frame from the second switch with a source FCID comprising the fourth FCID and a destination FCID comprising the second FCID;
overwrite the source FCID in the second frame with the third FCID and the destination FCID in the second frame with the first FCID; and
forward the second frame to the first endpoint device.
14. The apparatus of claim 11, wherein the processor is further configured to:
receive a message from a second switch comprising information that indicates that the second endpoint device has been assigned a fourth FCID that proxies for a third FCID that was previously assigned to the second endpoint by another switch in the network;
receive a second frame from the first endpoint device with a source FCID comprising the first FCID and a destination FCID comprising the third FCID;
overwrite the source FCID in the second frame with the second FCID and the destination FCID in the second frame with the fourth FCID; and
forward the second frame to the second endpoint device.
15. The apparatus of claim 11, wherein the processor is further configured to receive a message that the first endpoint device has a pending migration to the first switch, wherein the message contains the first FCID.
16. The apparatus of claim 11, wherein the processor is further configured to look up the first FCID in an FC name server database prior to responding to the login request with the first FCID.
17. The apparatus of claim 11, wherein the processor is further configured to:
receive a port login request frame from the first endpoint device;
add the second FCID to a vendor specific information field in the port login request frame; and
forward the port login request frame.
18. One or more computer readable media storing instructions that, when executed by a processor, cause the processor to:
receive a login request from a first endpoint device that is associated with a first FC identifier (FCID) that was previously assigned to the first endpoint device in a network;
respond to the login request with the first FCID;
assign the first endpoint device a second FCID associated with a domain of the switch, wherein the second FCID is used as a proxy FCID within the network for the first endpoint device;
receive a first frame from the first endpoint device with a source FCID comprising the first FCID and a destination FCID comprising an FCID for a second endpoint device;
overwrite the source FCID in the first frame with the second FCID such that the first frame is associated with the domain of the first switch domain after transmission from the first switch; and
forward the first frame to the second endpoint device.
19. The computer readable media of claim 18, further comprising instructions that, when executed by the processor, cause the processor to:
receive a second frame from another switch in the network with a destination FCID comprising the second FCID;
overwrite the destination FCID in the second frame with the first FCID; and
forward the second frame to the first endpoint device.
20. The computer readable media of claim 18, further comprising instructions that, when executed by the processor, cause the processor to.
receive a message from a second switch comprising information that indicates that the second endpoint device has been assigned a fourth FCID associated with a domain of the second switch that proxies for a third FCID that was previously assigned to the second endpoint by another switch in the network;
receive a second frame from the second switch with a source FCID comprising the fourth FCID and a destination FCID comprising the second FCID;
overwrite the source FCID in the second frame with the third FCID and the destination FCID in the second frame with the first FCID; and
forward the second frame to the first endpoint device.
21. The computer readable media of claim 18, further comprising instructions that, when executed by the processor, cause the processor to:
receive a message from a second switch comprising information that indicates that the second endpoint device has been assigned a fourth FCID that proxies for a third FCID that was previously assigned to the second endpoint by another switch in the network;
receive a second frame from the first endpoint device with a source FCID comprising the first FCID and a destination FCID comprising the third FCID;
overwrite the source FCID in the second frame with the second FCID and the destination FCID in the second frame with the fourth FCID; and
forward the second frame to the second endpoint device.
22. The computer readable media of claim 18, further comprising instructions that, when executed by the processor, cause the processor to receive a message that the first endpoint device has a pending migration to the first switch, wherein the message contains the first FCID.
23. The computer readable media of claim 18, further comprising instructions that, when executed by the processor, cause the processor to look up the first FCID in an FC name server database prior to responding to the login request with the first FCID.
24. The computer readable media of claim 18, further comprising instructions that, when executed by the processor, cause the processor to:
receive a port login request frame from the first endpoint device;
add the second FCID to a vendor specific information field in the port login request frame; and
forward the port login request frame.

1460716209-53ea19f3-e0aa-4eea-a08a-31b9e8b04e23

1. A method comprising:
establishing a first mapping between request attribute sets and a first set of peers in a network;
wherein the peer to which each request attribute set is assigned is responsible for aggregating counter information associated with requests associated with the each request attribute set;
receiving, at a first peer in the first set of peers, a first request associated with a first request attribute set;
wherein the first mapping maps the first request attribute set to a second peer, in the first set of peers;
based, at least in part, on determining that the first request is associated with the first attribute set, the first peer retrieving a first global counter snapshot and a first local increment counter from local storage associated with the first peer;
based, at least in part, on the first global counter snapshot, the first local increment counter and policy information, the first peer determining whether the first peer can service the first request;
in response to determining that the first peer can service the first request:
the first peer servicing the first request; and
the first peer incrementing the first local increment counter to reflect that the first peer serviced the first request;

wherein the method is performed by one or more computing devices.
2. The method of claim 1 further comprising:
determining whether the first local increment counter exceeded a threshold value;
in response to determining that the first local increment counter exceeded the threshold value, transmitting the first local increment counter to the second peer, and resetting the first local increment counter to zero;
in response to the first peer receiving, from the second peer, a first global counter associated with the first global counter snapshot, the first peer updating the first global counter snapshot with the first global counter, and storing the updated first global counter snapshot in the local storage.
3. The method of claim 1, wherein:
the first mapping maps a second identifier to the first peer; and
the first peer is further configured to perform:
receiving update data for one or more local counters snapshots from other peers in the set of peers; and
based on the update data received from the other peers, updating the one or more local counters snapshots.
4. The method of claim 1,
wherein the first request comprises the first identifier, which identifies a first requestor that sent the first request; and
wherein the first mapping comprises one or more partitions, and each partition, from the one or more partitions, corresponds to a peer from the set of peers.
5. The method of claim 1, further comprising:
in response to detecting that a third peer is installed in the network:
modifying the first mapping to represent a new mapping between the identifiers and a new set of peers;
wherein the new set of peers comprises the set of peers and the third peer; and
using the new mapping to determine a particular peer to which transmit updates for the first global counter.
6. The method of claim 4, further comprising:
determining whether the first requestor required provisioning for services offered by the network;
wherein the provisioning of the first requestor comprises determining, for the first requestor, one or more quotas associated with the one or more classifiers; and
wherein the determining whether the first peer can service the first request further comprises determining whether servicing the first request by the first peer could cause exceeding any of the one or more quotas associated with the one or more classifiers for the first requestor.
7. The method of claim 1, further comprising:
establishing a second mapping between the identifiers and a second set of peers in the network;
wherein the second set of peers comprises the peers of the first set of peers except the second peer;
detecting that the second peer is non-responsive;
receiving, at the first peer, a second request associated with the first identifier and the one or more classifiers;
based, at least in part, on the first identifier, the one or more classifiers, and the policy information, the first peer retrieving the first global counter snapshot and the first local increment counter;
based, at least in part, on the first global counter snapshot and the first local increment counter, the first peer determining whether the first peer can service the second request;
in response to determining that the first peer can service the second request:
the first peer servicing the second request;
the first peer updating the first local increment counter to reflect that the first peer serviced the first request;
based on the second mapping, the first peer determining that the first local increment counter is to be sent to a fourth peer;
the first peer transmitting the first local increment counter to the fourth peer and resetting the first local increment counter to zero; and

in response to the first peer receiving, from the fourth peer, a second global counter associated with a second global counter snapshot, the first peer updating the second global counter snapshot with the second global counter, and storing the updated second global counter snapshot in the local storage.
8. The method of claim 1, wherein the second mapping is distributed to the second set of peers.
9. A non-transitory computer-readable storage medium storing instructions which, when executed by one or more processors, cause the one or more processors to perform:
establishing a first mapping between request attribute sets and a first set of peers in a network;
wherein the peer to which each request attribute set is assigned is responsible for aggregating counter information associated with requests associated with the each request attribute set;
receiving, at a first peer in the first set of peers, a first request associated with a first request attribute set;
wherein the first mapping maps the first request attribute set to a second peer, in the first set of peers;
based, at least in part, on determining that the first request is associated with the first attribute set, the first peer retrieving a first global counter snapshot and a first local increment counter from local storage associated with the first peer;
based, at least in part, on the first global counter snapshot, the first local increment counter and policy information, the first peer determining whether the first peer can service the first request;
in response to determining that the first peer can service the first request:
the first peer servicing the first request; and
the first peer incrementing the first local increment counter to reflect that the first peer serviced the first request.
10. The non-transitory computer-readable storage medium of claim 9, wherein the instructions include instructions for:
determining whether the first local increment counter exceeded a threshold value;
in response to determining that the first local increment counter exceeded the threshold value, transmitting the first local increment counter to the second peer, and resetting the first local increment counter to zero; and
in response to the first peer receiving, from the second peer, a first global counter associated with the first global counter snapshot, the first peer updating the first global counter snapshot with the first global counter, and storing the updated first local counter in the local storage.
11. The non-transitory computer-readable storage medium of claim 9, wherein:
the first mapping maps a second identifier to the first peer; and
further comprising instructions which, when executed, cause the one or more processors to perform:
receiving update data for one or more local counters snapshots from other peers in the set of peers; and
based on the update data received from the other peers, updating the one or more local counters snapshots.
12. The non-transitory computer-readable storage medium of claim 9,
wherein the first request comprises the first identifier, which identifies a first requestor that sent the first request; and
wherein the first mapping comprises one or more partitions, and each partition, from the one or more partitions, corresponds to a peer from the set of peers.
13. The non-transitory computer-readable storage medium of claim 9, further comprising instructions which, when executed, cause the one or more processors to perform:
in response to detecting that a third peer is installed in the network:
modifying the first mapping to represent a new mapping between the identifiers and a new set of peers;
wherein the new set of peers comprises the set of peers and the third peer; and
using the new mapping to determine a particular peer to which transmit updates for the first global counter.
14. The non-transitory computer-readable storage medium of claim 9, further comprising instructions which, when executed, cause the one or more processors to perform:
determining whether the first requestor required provisioning for services offered by the network;
wherein the provisioning of the first requestor comprises determining, for the first requestor, one or more quotas associated with the one or more classifiers; and
wherein the determining whether the first peer can service the first request further comprises determining whether servicing the first request by the first peer could cause exceeding any of the one or more quotas associated with the one or more classifiers for the first requestor.
15. The non-transitory computer-readable storage medium of claim 9 further comprising instructions which, when executed, cause the one or more processors to perform:
establishing a second mapping between the identifiers and a second set of peers in the network;
wherein the second set of peers comprises the peers of the first set of peers except the second peer;
detecting that the second peer is non-responsive;
receiving, at the first peer, a second request associated with the first identifier and the one or more classifiers;
based, at least in part, on the first identifier, the one or more classifiers, and the policy information, the first peer retrieving the first global counter snapshot and the first local increment counter;
based, at least in part, on the first global counter snapshot and the first local increment counter, the first peer determining whether the first peer can service the second request;
in response to determining that the first peer can service the second request:
the first peer servicing the second request;
the first peer updating the first local increment counter to reflect that the first peer serviced the first request;
based on the second mapping, the first peer determining that the first local increment counter is to be sent to a fourth peer;
the first peer transmitting the first local increment counter to the fourth peer and resetting the first local increment counter to zero; and

in response to the first peer receiving, from the fourth peer, a second global counter associated with a second global counter snapshot, the first peer updating the second global counter snapshot with the second global counter, and storing the updated second global counter snapshot in the local storage.
16. The non-transitory computer-readable storage medium of claim 9, wherein the second mapping is distributed to the second set of peers.
17. A system comprising a plurality of peers, wherein the plurality of peers comprises a first peer and a second peer, and wherein:
the first peer is configured to perform:
establishing a first mapping between request attribute sets and a first set of peers in a network;
wherein the peer to which each request attribute set is assigned is responsible for aggregating counter information associated with requests associated with the each request attribute set;
receiving, at the first peer in the first set of peers, a first request associated with a first request attribute set;
wherein the first mapping maps the first request attribute set to the second peer, in the first set of peers;
based, at least in part, on determining that the first request is associated with the first attribute set, the first peer retrieving a first global counter snapshot and a first local increment counter from local storage associated with the first peer;
based, at least in part, on the first global counter snapshot, the first local increment counter and policy information, the first peer determining whether the first peer can service the first request;
in response to determining that the first peer can service the first request:
the first peer servicing the first request; and
the first peer incrementing the first local increment counter to reflect that the first peer serviced the first request.
18. The system of claim 17 wherein the first peer is further configured to perform:
determining whether the first local increment counter exceeded a threshold value;
in response to determining that the first local increment counter exceeded the threshold value, transmitting the first local increment counter to the second peer, and resetting the first local increment counter to zero; and
in response to the first peer receiving, from the second peer, a first global counter associated with the first global counter snapshot, the first peer updating the first global counter snapshot with the first global counter, and storing the updated first local counter in the local storage.
19. The system of claim 17,
wherein the first request comprises the first identifier, which identifies a first requestor that sent the first request; and
wherein the first mapping comprises one or more partitions, and each partition, from the one or more partitions, corresponds to a peer from the set of peers.
20. The system of claim 17,
wherein the first request comprises the first identifier, which identifies a first requestor that sent the first request; and
wherein the first mapping comprises one or more partitions, and each partition, from the one or more partitions, corresponds to a peer from the set of peers.
21. The system of claim 17, further comprising a third peer; and wherein the first peer is further configured to perform:
in response to detecting that the third peer is installed in the network:
modifying the first mapping to represent a new mapping between the identifiers and a new set of peers;
wherein the new set of peers comprises the set of peers and the third peer; and

using the new mapping to determine a particular peer to which transmit updates for the first global counter.
22. The system of claim 20, wherein the first peer is further configured to:
determining whether the first requestor required provisioning for services offered by the network;
wherein the provisioning of the first requestor comprises determining, for the first requestor, one or more quotas associated with the one or more classifiers; and
wherein the determining whether the first peer can service the first request further comprises determining whether servicing the first request by the first peer could cause exceeding any of the one or more quotas associated with the one or more classifiers for the first requestor.
23. The system of claim 17, further comprising a fourth peer; and wherein the first peer is further configured to perform:
establishing a second mapping between the identifiers and a second set of peers in the network;
wherein the second set of peers comprises the peers of the first set of peers except the second peer;
detecting that the second peer is non-responsive;
receiving, at the first peer, a second request associated with the first identifier and the one or more classifiers;
based, at least in part, on the first identifier, the one or more classifiers, and the policy information, the first peer retrieving the first global counter snapshot and the first local increment counter;
based, at least in part, on the first global counter snapshot and the first local increment counter, the first peer determining whether the first peer can service the second request;
in response to determining that the first peer can service the second request:
the first peer servicing the second request;
the first peer updating the first local increment counter to reflect that the first peer serviced the first request;
based on the second mapping, the first peer determining that the first local increment counter is to be sent to the fourth peer;
the first peer transmitting the first local increment counter to the fourth peer and resetting the first local increment counter to zero; and

in response to the first peer receiving, from the fourth peer, a second global counter associated with a second global counter snapshot, the first peer updating the second global counter snapshot with the second global counter, and storing the updated second global counter snapshot in the local storage.
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 of making solid nanoparticles, comprising:
making an oil-in-water microemulsion by heating, the microemulsion comprising:
a liquid nanoparticle matrix material formed by heating a solid matrix material until melted;
a surfactant or a co-surfactant or a mixture thereof, and
a molecule of interest, wherein the molecule is a drug molecule;

wherein the microemulsion is formed essentially spontaneously by heating at a temperature of between about 35\xb0 C. and about 100\xb0 C.; and
cooling the microemulsion while stirring to form solid nanoparticles having a diameter of less than about 300 nanometers, wherein said solid nanoparticles are formed by cooling the microemulsion without aqueous dilution, and where the molecule of interest is either entrapped in or adsorbed to the solid nanoparticles.
2. The method according to claim 1, wherein the nanoparticle matrix material comprises one or more of the following materials: emulsifying wax, polyoxyethylene sorbitan fatty acid esters, polyoxyethylene alkyl ethers, polyoxyethylene stearates, phospholipids, fatty acids or fatty alcohols or their derivatives, or combinations thereof.
3. The method according to claim 1, wherein the liquid nanoparticle matrix material is present in the microemulsion at a concentration from about 0.1 to about 30 mgmL.
4. The method according to claim 1, wherein the microemulsion comprises an oil phase that is present as liquid droplets having a diameter of less than about 100 nanometers.
5. The method according to claim 1, wherein the microemulsion comprises a continuous phase comprising water or an aqueous buffer at a concentration of greater than about 95% ww.
6. The method according to claim 1, wherein the surfactant or co-surfactant comprises polyoxyethylene alkyl ethers, polyoxyethylene sorbitan fatty acid esters, polyoxyethylene stearates, hexadecyltrimethylammonium bromide, fatty alcohol and their derivatives, or combinations, thereof.
7. The method according to claim 1, wherein the surfactant is present at a total concentration of about 1\u20135000 mM.
8. The method according to claim 1, wherein the molecule of interest is present at a total concentration in the range of about 20 \u03bcgmL to about 5 mgmL.
9. The method according to claim 1, wherein the nanoparticle is coated with a cell-specific ligand such as an antibody, carbohydrate, peptide, protein, or derivatives or combinations thereof.
10. The method of claim 1, wherein the nanoparticles and molecule of interest are formulated into a pharmaceutical composition suitable for intravenous, intramuscular or subcutaneous administration.