SIGCOMM 2010: Day 2

Privacy

Privacy-Preserving P2P Data Sharing with OneSwarm

  • Three types of data: private, public (non-sensitive) and public (without attribution). This talk is about the last one: want to download and share data without people knowing what you’re downloading or sharing.
  • P2P is good for privacy because there is no centralized control or trust, you retain rights to your data (instead of giving them to a third party) and no centralized third party knows everything you’re doing. But in P2P: anyone can monitor your behavior!
  • Previous solutions: Tor plus BitTorrent, but this needs a fraction of the clients to be public and gives poor performance. Or Freenet, which has poor bulk data performance and requires users to store others data. Median download of BitTorrent a 1MB file is 94s. But BT+Tor is 589s and Freenet is 1271s.
  • Implemented a OneSwarm client and released in March 2009… now hundreds of thousands of users. Based on social networks: share keys with your friends.
  • Searches are flooded through the network, and set up a data path along the successful route, which does not reveal who is the ultimate sender or provider.
  • Threat model: the attacker has a limited number of overlay nodes and can do anything on nodes he controls, including traffic injection/sniffing/correlation.
  • To support mobile peers, use a DHT to publish IP and port, however this is published, encrypted and signed separately for each peer. This makes it possible to remove a peer.
  • Sparse social networks are a problem: with only one friend, you have poor reliability, poor performance and privacy problems. This is bad for early adopters. Early adopters used a forum to share their public keys. Solution was to add a community server, as a source of untrusted peers.
  • With untrusted peers, delay responses to foil timing attacks, probabilistically forward queries and used deterministic random behavior to limit information leakage from repeated queries. Can trust/not trust peers on a per-object basis.
  • Want to have search without revealing the source and destination. The approach is based on flooding with delay, where searches are only forwarded using spare capacity, and delayed at each hop. Cancel messages move faster through the network. However, this gives no guarantee that all data can be found by all users at all times.
  • Search types: 160bit content hash and text-based. For response delay, use random reply delay seeded by the hash (if hash-based search). This is harder for text-based search, so delay based on the hash of the content.
  • Multipath connections are supported to avoid weak points in the network. Default is to cancel after getting 20 responses (not just one). Then the forwarding load is distributed.
  • Data transfer uses a modified version of BitTorrent, which handles multiple sources and swarming downloads naturally.
  • Timing attack is possible by monitoring the delay between search and the response, and inferring how many users could have sent the reply within the recorded time.
  • Evaluated potential of the timing attack using a synthetic OneSwarm overlay, based on 1.7 last.fm users. Attackers use a public community server, and users with 26 or fewer friends take some untrusted friends as well. Design eliminates the attacker’s ability to pinpoint particular users.
  • Also evaluated performance using 120 PlanetLab nodes transferring a 20MB file. Median download time for OneSwarm is 173s (compared to 94s for BitTorrent, but much less than BT+Tor and Freenet). At the 70th percentile, OneSwarm and BT are similar (97s vs 190s), but BT+Tor and Freenet are much worse.
  • Multipath transfers increase average transfer rate from 29KB/s to 457KB/s.
  • Q. Would it be fair to classify this as Gnutella where the network is restricted to the social graph and searches are less flexible? Similar, but the key change is that the data flows over the path in the overlay (not directly), which makes it more privacy-preserving. Does this not give worse scalability than Gnutella, which had problems? Gnutella had problems when people were still using modems, and it is more viable to provide a few KB/s. The current overlay is not oversubscribing.
  • Q. What are you relying on to ensure that you don’t know where the data are coming from? Because you don’t know the topology. If you are next to an attacker, you rely on the delay that you add. Are you seeing a sum of random variables, which will leak more information as the path becomes longer? You could maybe estimate the hop-count but not pin-point nodes.
  • Q. Is a 20MB file too small for TCP to show realistic performance? Used this because we needed to experiment with Tor also, and we didn’t want to stress that network too much. For the Freenet experiment, we used a 5MB file and extrapolated from that because it was hard to get 20MB to download reliably.

Differentially-Private Network Trace Analysis

  • Can you conduct network trace analysis that provides strict, formal, “differential privacy” guarantees?
  • Selected some representative traces and tried to reproduce the results using differential privacy.
  • It was possible to reproduce every analysis attempted, but there is a privacy/accuracy trade-off.
  • Toolkit and analyses are available online from the PINQ web site.
  • Access to realistic data is helpful for networking research, but there is a tension between utility and privacy. The requirements of utility are usually for aggregate statistics, whereas privacy requirements are typically for individual behavior.
  • Other approaches include: trace anonymization (doesn’t always work unless people are excessively conservative), code-to-data (send your analysis to the people who hold the data, but it is hard to know what that code is doing), or secure multi-party computation (similar to code-to-data). The aim here is to start with formal guarantees and see how useful it can be.
  • Differential privacy: the results don’t depend on the presence or absence of an individual record. Doesn’t prevent disclosure, but makes no assumptions about what what the attackers can do, and is agnostic to data types.
  • Uses PINQ, which is a programming language that guarantees programs are differentially private.
  • Challenges: getting DP requires introducing noise, so you need to use statistically robust measurements. PINQ requires analyses to be written as high-level, declarative queries, which can require some creativity or reinterpretation. Also (not dealt with): masking a few packets does not mask a person, and the guarantees degrade more as a dataset is reused (policy question of how you mete out access to a dataset).
  • Example is worm fingerprinting. Group packets by payload, filter by the count of source IPs being over a threshold and the count of destination PIs being over another threshold. Can then count the number of worms, approximately. Need to supply epsilon to the count which will start off the differentially-private version.
  • Built some tools for analysis. For example, implemented three versions of a CDF. In doing this, you need to scale down the accuracy for each subquery in order to not degrade the dataset privacy too much.
  • Showed an example CDF. The differentially private one is not monotonic at the microscopic scale, but it gives a convincing macro-scale result.
  • Can also list frequently occurring strings, using an algorithm based on statistical properties of text, which gradually extends a prefix.
  • Extend worm fingerprinting: actually enumerate the payloads that have significant src/dest counts.
  • Also built more tools and analyses: did packet-level analyses, flow-level analyses and graph-level analyses. Sometimes had to compromise on privacy to get high accuracy (epsilon = 10 for weak privacy).
  • Many open questions. Perhaps the biggest is whether DP guarantees for packets are good enough. Or whether, if writing new analyses, they could be designed with DP in mind.
  • Q. Could extensions to PINQ apply to trace analysis that look for isolated events, such as network intrusions which are relatively rare? Can separate the two tasks: learning a rule or filter that could identify an intrusion (which could use DP), and apply that filter to individual packets (which could not use DP, because you effectively want to violate privacy at this point).
  • Q. Does someone need to hold onto the raw packets? Yes, like the code-to-data setting.
  • Q. In DP, each query may consume epsilon privacy and the provider must set a budget, so how do you set this? And what happens when the budget is exhausted? You could imagine turning off the dataset when the hard threshold is met. But this is really a policy question. Setting the budget is difficult: perhaps you can provide data outputs from a DP query to a large group who can then do useful work with it.
  • Q. Is there a trade-off between DP and the presence of correlations in the data? In a lot of cases, it is possible to restructure the data set to reduce the amount of correlation between individual records (by grouping the strongly correlated records together).

Encrypting the Internet

  • 50 million websites exist, but only about 600k of them enable SSL/TLS. Can we change the infrastructure to make all transactions protected and secure.
  • Main drawback is protocol processing speed and cost, due to public key crypto for handshaking and symmetric crypto for the data. 2 million clock cycles for RSA decrypt.
  • Main contribution is a CPU that is capable of encrypting packets at line rates, and getting a 4–12x speedup in AES and a 40% speedup in RSA.
  • Encrypting the internet is not securing it. Don’t deal with certificate/trust management, malicious software or privacy breaches at the end-host.
  • AES is a block cipher, based on the Rijndael algorithm. Can use 128-bit blocks and either 128, 192 or 256-bit keys. AES takes 10, 12 or 14 rounds.
  • AES uses confusion (invert in GF(2^8) followed by an affine map). Then the bytes are permuted by shifting the rows of the S-box by varying amounts. Then the columns of the S-box are mixed by matrix multiplication. Uses many bit-linear operations, which are easy to implement in VLSI. Finally, add the round key using XOR.
  • AES is typically implemented using table lookups, which are costly (approximately 15 cycles per byte). But need to get 1Gb/s. So the aim is to implement them in combinatorial logic, on the processor data path.
  • Added new instructions: AESENC, AESENCLAST, AESDEC, AESDECLAST. Cache attacks are eliminated. Challenge is to implement this in as small a gate area as possible. Mathematical techniques such as composite fields help to achieve this in 100-400 gates. Total number of gates is similar to an adder or multiplier.
  • RSA requires performing a modular exponentiation, which can be implemented using modular multiplication. Implementing a faster multiplication algorithm in assembly achieved a 40% speedup over OpenSSL.
  • Also implemented the first version of combined encryption and authentication for TLS 1.2.
  • AES-NI latency is 24 clocks/round, then 6 clocks, and the throughput is 2 clocks.
  • Overall, can move from 501 SSL sessions/second to 1216 SSL sessions/second using AES-NI in Galois counter mode.
  • Now, one core can saturate a 1G link, and 8 cores can saturate a 10G link.
  • Future work is to improve larger RSA variants and implement the eventual SHA-3 algorithm.
  • Q. When you get that fast, how many good-quality random bits per second you can get? This work doesn’t address that, but all we need is an entropy source per a 2004 paper. Not sure what the product groups are doing in this respect.
  • Q. Is Intel working on speeding up the RSA? The speedup presented in the paper (40%) is good enough to saturate the link.
  • Q. Could you expose the GF operations as primitives themselves? It is implemented in such a way that you can isolate the inversion of GFs or the multiplication. Algorithms in the SHA-3 competition also exploit similar primitives.
  • Q. How general are your optimizations in terms of other block ciphers? You can implement a variety of crypto algorithms using the primitives we have design, including several cryptographic hash functions.

Wireless LANs

Enabling Fine-Grained Channel Access in WLAN

  • 802.11n achieves about 45.2 Mbit/s at the application layer, which is much less than the advertised bitrate.
  • Overhead arises from various sources: CSMA, backoff, DIFS and SIFS, and ACK. Simple model of this overhead as ration from transmission time to total time for a packet. As the PHY data rate increases, the time for transmitting data (efficiency) becomes small compared to all of these overheads. There is a static delay that cannot be reduced, constraining speedup.
  • Existing MAC is limited by allocating a whole channel to a single user at once. Aggregation is a possible solution, but you require large aggregation (23KB frames) to get 80% efficiency at 300Mbps. And this also increases latency.
  • Basic idea is to divide the channel into small, fine-grained slices. Directly reducing the channel width doesn’t work because of guard-band overhead. Approach then is the use orthogonal overlapping subchannels (OFDM).
  • If nodes are asynchronous, you lose orthogonality (i.e. if you have multiple users). Challenge then is to coordinate transmissions in random-access networks like WLAM. Time-domain backoff is very inefficient in this case.
  • Designed new PHY and MAC architectures: “FICA”.
  • M-RTS/M-CTS/DATA/ACK access sequence.
  • Carrier-sensing and broadcasting can be used to analyze the timing misalignment. A proper cyclic-prefix accommodates the timing misalignment: a long one for M-RTS and a short one for M-CTS/DATA/ACK.
  • For contention resolution, time-domain backoff is inefficient. Solution is to do frequency-domain contention with PHY signalling in the M-RTS/M-CTS symbols.
  • Frequency domain backoff: reduce the number of subchannels to contend if there is a collision, and increase it if there is success. This is analogous to congestion-control mechanisms. Two policies: “update to max” and AIMD.
  • Implemented using the Sora software radio platform, based on a SoftWifi implementation.
  • Evaluated performance of the synchronization, the signalling reliability and the decoding performance.
  • Also showed simulation results for the performance gain over 802.11n, and showed an improvement in efficiency for both full aggregation (unrealistic) and a mixture of saturated and delay-sensitive traffic (realistic and with much greater benefits).
  • Q. How do you deal with the case when the number of sources exceeds the number of sub-carriers (in frequency-domain backoff)? Could you combine time and frequency? Yes, we could always do that.
  • Q. Is there a way of using this system with RTS/CTS? The overhead of these is so low (37us for RTS), that it might not be worth doing this.
  • Q. Why is the problem of asynchronous timing different from multipath fading? It can create arbitrarily bad interference with the FFT window that is done for OFDM.
  • Q. What happens if you compare your scheme to classic OFDM in terms of bits/seconds/Hz (considering delay due to synchronization)? There is a sweet point in symbol size that can meet your design goal.

Predictable 802.11 Packet Delivery from Wireless Channel Measurements

  • 802.11 is fast (600Mbps), reliable (usable at vehicular speeds over extended range) and ubiquitous (cheap). But new applications, such as wireless displays or controller input, can stress the network.
  • In theory, performance should be easily measurable and used to guide channel rate selections. But the real-world doesn’t always match the theory. So statistical adaptation is often used, but convergence time becomes a problem (especially as the measurement results change dynamically).
  • Goal is to bridge theory and practice, and accurately predict performance over real channels and devices.
  • Channel metric is the received signal strength indicator (RSSI) which, with noise, gives the SNR for a packet. However, this isn’t perfect, because it can vary by 10dB on a per packet basis. Different subchannels have different SNRs.
  • 802.11n provides a new opportunity: detailed channel measurements, which are used for advanced MIMO techniques. Get a Channel State Information (CSI) matrix for per-antenna paths.
  • Use the Effective SNR (the total useful power in a link) as opposed to the packet SNR (total power in the link).
  • CSI is measured on receive, so for every received frame, we know all antennas and subcarriers used. Then take this and compute SNRs per symbol. And use textbook formulae to calculate per-symbol bit-error rates, and average them to get an effective bit-error rate. Finally convert this back to the effective SNR.
  • Every rate gets an effective SNR threshold, calculated offline per NIC implementation (not per NIC or per channel). This handles real NICs which may use interesting decoding techniques (hard/soft/maximum likelihood, etc.).
  • Application: what is the fastest configuration for a particular link? Select rate/MIMO/channel width based on the information.
  • Application: which antenna is the best to use to save power?
  • Application: what is the lowest transmit power at which I can support 100 Mbps?
  • Implemented in an Intel Wi-Fi Link 5300 NIC (3×3 MIMO, 450Mbps). Used two testbeds with over 200 widely varying links. Open-source Linux driver and used firmware debug mode to send CSI to the receiving host. Real-time computation took 4us per 3×3 CSI.
  • For predicting optimal 3×3 rate: effective SNR is much closer to the ground truth than packet SNR.
  • To evaluate rate control, used channel simulation on a mobile trace using MATLAB and the SoftRate GNU Radio. Effective SNR gets a better average delivered rate than SampleRate, SoftRate and SampleRate with fixed retry (802.11a algorithms).
  • Effective SNR extends to MIMO. Compared to optimal and an invented algorithm called “previous-OPT”. Effective SNR gets 80% accuracy and 10% overselection.
  • Related work: SoftRate, AccuRate and EEC (from yesterday). All work with 802.11a but don’t extend to more recent techniques.
  • Q. If you had CSI and it’s quick, do you need to do all of these things? The RSSI has a lot of error, and we were able to make this work.
  • Q. Is the debug mode on the NIC publicly availably? Yes, I think so.
  • Q. Would a better comparison be to other techniques that use scheduled MACs? Trying to do something that works with what we have.

SourceSync: A Distributed Architecture for Sender Diversity

  • Receiver diversity underlies many systems, such as opportunistic routing protocols, and WLAN diversity protocols. In opportunistic routing, let any router that receives the packet forward it. If multiple routers/channels with different loss rates, the loss probability is now the joint probability of losing the packet on all channels.
  • Sender diversity is the converse of receiver diversity. If many senders transmit simultaneously, it is unlikely that they will all be attenuated at the same time. It provide analogous benefits to receiver diversity. For example, connect many APs to wired Ethernet, and let many of them broadcast a packet simultaneously to the client.
  • Challenge: simultaneous transmissions don’t strengthen each other, because they are likely to be out of sync. Need distributed symbol-level synchronization.
  • An 802.11 symbol takes 3.2us. With synchronization error of 2us, the best you can get is an SNR of 2dB. 1us synchronization error gives 5db. But for maximum bit rate, 802.11 needs an SNR of ~22db.
  • Implemented the system, SourceSync, for an FPGA. Talking about opportunistic routing, but applies also to WLANs.
  • Natural way to synchronize transmitters is by reception. But since multiple paths have different delays, need to compensate for these differences.
  • Path delay is made up of propagation delay and packet detection delay (typically needing multiple samples to detect a symbol). Then a turnaround time between receipt and transmission.
  • Packet detection is caused by receivers detecting packets using correlation. Random noise can cause a receiver not to detect a packet on the first sample. Since routers see different random noise, they may make different numbers of samples. Routers can estimate this based on the phase shift in various carriers.
  • Hardware turnaround time is hardware dependent, caused by different hardware pipelines and radio frontends. Routers locally calibrate this using their clocks.
  • Propagation delay is measured by probe-response between node pairs. A knows its packet detection delay, B knows its packet detection delay, and so we can compute this from the RTT.
  • Challenge: can nodes synchronize using carrier sense? Transmission from one of the joint senders triggers the other senders. All nodes use CSMA, so one of the nodes wins contention and begins transmitting; other nodes join in if they have the data.
  • The lead sender adds a sync header to the packet and a known fixed gap to all co-senders to join after the gap. Co-sender listens, turns around from receive to transmit, waits for a compensating delay, and sends the data.
  • Implemented in a FPGA of the WiGLAN radio. Built a testbed with a variety of line-of-sight and non-line-of-sight locations.
  • Evaluated: randomly pick a pair of nodes to transmit, and measured the synchronization error. 90th percentile of synchronization error was measured: 20ns at 5dB SNR, and as little as ins at 25dB SNR.
  • Can SourceSync achieve sender diversity gains? Two nodes transmit simultaneously to a receiver (again). Check that two channels have different OFDM subchannel SNRs (they do, in the example) and that SourceSync achieves higher SNR in all subchannels.
  • Compare using the best single access point to using SourceSync, with two senders and a client. Repeat for all locations. SourceSync gives a median throughput gain of 57%.
  • Compared with opportunistic routing. Single path does worst. ExOR does better. SourceSync + ExOR does best (doubled median throughput over single path, and 45% improvement over ExOR alone).
  • Q. Did you consider just increasing the power of a single AP instead of sending with multiple APs? There is a fundamental gain here: the SNR profile is different for different routers, and combining across multiple senders gets rid of these deep losses.
  • Q. Should there be more components to the calculation of delay, based on the RTT? The nice part about this technique is that channel access delay doesn’t affect us, because we use carrier sense for telling when to transmit.
  • Q. Why did you not compare the performance of your scheme to MIMO? Sender diversity is orthogonal to MIMO and could improve its performance.
  • Q. Is your synchronization header long enough to account for nodes being very distant? Actually, it’s the gap after the header that has to be long enough. It’s a simple system-level parameter.

Novel Implementations of Network Components

SwitchBlade: A Platform for Rapid Deployment of Network Protocols on Programmable Hardware

  • […]
  • Existing approaches involve developing custom software, custom hardware or programmable hardware.
  • Platform header: a hash value for custom forwarding, a bitmap for what preprocessor should execute on the packet, a forwarding mode (including longest prefix matching or an exact match; also able to throw a software exception) and the virtual data plane ID.
  • Virtual data plane has its own preprocessing, lookup and post-processing stages: they operate in isolation.
  • Preprocessing stage: select processing functions from a library of modules (such as path splicing, IPv6 and OpenFlow). Also hashing: operator indicates what bits in the header should be incorporated in the packet-header hash to determine how the packet should be forwarded (can include up to 256 bits from the header).
  • Can do OpenFlow, where forwarding decisions are made on a 13-tuple (240 bits), which SwitchBlade hashes for custom forwarding to be done.
  • Modules are implemented in Verilog. Preprocessing and postprocessing modules extract the bits for lookup.
  • Forwarding stage: perform output port lookup based on mode bits. A software exception can be thrown and the packet redirected to the CPU. Could do hardware-accelerated virtual routers in software.
  • Implemented on NetFPGA.
  • Evaluated for resource utilization and packet forwarding overhead. Compared to a baseline implementation on NetFPGA. There is minimal resource overhead and no packet forwarding overhead.
  • Evaluated on a three-node topology.
  • SwitchBlade uses 13 million gates to get four data planes; other implementations (IPv4, splicing, OpenFlow) have one data plane and use 8 to 12 million gates.
  • No additional forwarding overhead compared to the reference implementation.
  • SwitchBlade is a programmable hardware platform with customizable parallel data planes. Provides isolation using rate limiters and fixed forwarding tables.
  • Q. How do you scale the performance beyond tens of Gbps? An artifact of the NetFGPA implementation which uses 4×1G ports. Later one will have 4×10G.
  • Q. Doesn’t the next paper show that it is possible to do all this in software? Things like Click are limited by packet copying overhead, so you are limited by the bandwidth of the PCI bus.
  • Q. What kind of hash function do you use and do different applications require different properties? We use a collision-resistant hash.

PacketShader: A GPU-Accelerated Software Router

  • Prototype achieves 40 Gbps on a single box by exploiting GPU acceleration.
  • Software routing is not just IP routing. It is driven by software and exploits commodity hardware.
  • 10G NICs cost from $200–300 per port. But software routers are limited to less than 10Gbps (8.7Gbps in RouteBricks is the best so far).
  • For 10G, it takes 1200 cycles to do packet I/O, and your budget is 1400 cycles. Lookup/encryption/hashing typically takes much more than that.
  • First step is to optimize the packet I/O. Then offload the other functions to the GPU.
  • GPUs are massively-parallel. Lots of small cores.
  • A GTX480 GPU has 480 cores and 1.2 billion transistors, most of which is dedicated to ALU.
  • Operations like hashing, encryption, pattern matching, network coding and compression are computationally intensive. GPU is well suited to these. GPU can also effectively hide memory latency.
  • Memory bandwidth of a top-of-the-line CPU is 32GB/s, but the empirical bandwidth (on realistic access patterns) is 25GB/s. Multiple ports receiving and transmitting will consume this and cause contention. However, a GPU has 174GB/s memory bandwidth.
  • Key insight: stateless packet processing is parallelizable. Take packets from the head of the receive queue, batch them and process them in parallel.
  • Latency is not impacted by parallel processing.
  • Before shader: checksum, TTL, format check, etc. This will send some packets along the slow path. It collects the destination IP addresses and passes those to the shader.
  • Shader: takes IP addresses, looks up the forwarding table and returns the next hops.
  • Post-shader: packets are updated and transmitted through the output ports.
  • Also device drivers at the receive and transmit side. Implemented a custom driver; details in the paper.
  • Can scale further with a multicore CPU. One master core and three worker cores. Master core talks to the shader. Once you have multi-socket, you need one GPU per CPU. Multi-socket, there is no communication between the CPUs, and each CPU owns a subset of the input queues.
  • Evaluated by connecting a packet generator and PacketShader back-to-back. Generator generates up to 80Gbps.
  • GPU gives a speedup (over CPU-only) of 1.4x for IPv4, 4.8x for IPv6, 2.1x for OpenFlow and 3.5x for IPSec.
  • IPv6 table lookup requires more power than IPv4 lookup. Algorithm is binary search on hash tables. Big performance improvement for small packets, but slightly worse for 1024 and 1514 bytes. However, this is bounded by the motherboard I/O capacity.
  • IPSec tunneling adds a header and trailer to the encrypted packet. The improvement is across all packet sizes, and is actually bigger for larger packets.
  • PacketShader achieves 28.2 Gbps with CPU only, and is implemented in user space, rather than kernel space. Reaches 39.2 Gbps with the GPU.
  • Need to add a control plane (currently only does static forwarding). Need Quagga or Xorp.
  • Could also integrate with a programming environment, such as Click.
  • Q. Is it worth implementing such a sophisticated design to make a 40% saving? And do you have a breakdown of where the savings are made? The budget numbers and breakdown are taken from RouteBricks.
  • Q. What do you think about the power efficiency of this compared to other approaches? Idle to full load is 327W–594W with two CPUs and two GPUs. (Compared to 260W–353W for two CPUs.)
  • Q. Does this approach have advantages over an integrated network processor in terms of scalability or programmability? Network processors are not commodity. Based on experience, they are much more difficult to program.
  • Q. Why did your approach have such a significant speedup over RouteBricks etc. even without the GPU? Improvements in packet I/O throughput.

EffiCuts: Optimizing Packet Classification for Memory and Throughput

  • Packet classification is important for security, traffic monitoring and analysis, and QoS. Usually based on the source and destination IPs and ports, and the protocol field.
  • Line rates and classifier sizes are increasing. This leads to high power consumption.
  • Previous approaches have used either TCAMs (poor scalability) or algorithmic approaches (potentially scalable, but problematic). Most promising approach based on decision trees. Aim of this work is to address the scalability of decision tree algorithms.
  • HiCuts and HyperCuts have investigated decision trees previously. However, they require large memory.
  • EffiCuts reduces the memory overhead of HyperCuts while achieving high packet throughput. Uses 57x less memory and 8x less power.
  • Rules in the decision tree are hypercubes in the rule space. Tree building successively cuts down the rule space into smaller sub-spaces. Stops when the cube is small. Classification uses tree traversal.
  • HyperCuts’ memory overhead is due to many rules overlapping and varying in size, because fine cuts to separate small rules lead to cuts to and replication of large rules. Also overhead because the rule space is sparse (leading to empty nodes or nodes with replicated rules).
  • Aim to tackle the variation in the rule size and the density of the rule space.
  • Separable trees: build separate trees for large and small rules. But separate them along different dimensions.
  • Build a distinct tree for each set of separable rules in 5 IP fields. This leads to a maximum of 31 trees, but in practice it’s more like 12.
  • Extra memory accesses to traverse multiple trees decreases packet throughput. To reduce the number of accesses, merge the trees.
  • HyperCuts uses equi-sized cuts to separate dense areas, whereas EquiCuts uses equally-dense cuts, which leads to fine/coarse cuts in dense/sparse areas. Many details of this in the paper.
  • Node co-location: colocate a node and its children, details of this in the paper.
  • Implemented HiCuts and Hypercuts with all heuristics, and EffiCuts. Used 16 rules per leaf. Power comparison uses an estimation from the Cacti tool to simulate the SRAM/TCAM.
  • First result: HyperCuts and HiCuts see memory grow more rapidly than EffiCuts. Replication decreases from 1000 to < 9. Efficuts needs constant number of bytes per rule as the number of rules grows.
  • EffiCuts requires 50% more memory accesses than HyperCuts. However, since EffiCuts uses much less memory, memory copies are inexpensive.
  • Throughput results are mixed (149 down to 73 million packets per second for one rule set; but 218 up to 318 for another). Still see an 8x saving in power.
  • Also compared EffiCuts to TCAM. Throughput story is also mixed, but EffiCuts consumes 6x less power than a TCAM.
  • Q. How do you separate “large” and “small” rules—using a threshold? We observed that the rule spread is essentially bimodal. This is based on a sensitivity analysis to the “largeness fraction” which varies between 0.1 and 0.95 without affecting the split.
  • Q. How would power consumption compare to a TCAM where you selectively turn on the relevant banks? Since we are comparing the worst-case packet match, every rule could go to a very different bank.

Cloud and Routing

Theory and New Primitives for Safely Connecting Routing Protocol Instances

  • Earlier measurement study showed that internet routing is much more complex than the traditional two-level hierarchical model (EIGRP/BGP/OSPF). Since it is so complicated, the connecting primitives play a critical role. 99.9% of analyzed networks depend on them. They are used for things like domain backup, partition healing and router-level shortest path routing.
  • Designs are usually either safe or flexible. The status quo is unsafe and inflexible. The talk describes something that is both safe and flexible!
  • Framework based on routing algebras (metarouting). Connecting primitives have provable safety properties, more expressivity and require no modifications to existing protocols.
  • Today’s connecting primitives have two features: route selection (ranking) and route redistribution (information exchange). Configured using various optional settings in router configuration scripts.
  • Misconfiguration can lead to suboptimal routes, or loops.
  • Two questions: how should routes be compared? and when should they be redistributed? The idea is to have a conversion function from routes to a universal metric. Each routing instance is associated with a pair of conversion functions. Now frame the problem as what properties these functions should satisfy.
  • Contributions: sufficient conditions to guarantee correct routing.
  • Goal: unmodified BGP, OSPF, RIP, EIGRP. But BGP and OSPF E2 are not strictly monotonic.
  • Non-BGP protocols modeled by a 2-dimensional ranking, comprising route type and cost. Conversion functions map these to and from an ordered set.
  • Route selection: prefer non-BGP to BGP routes, for non-BGP routes prefer type-A then B and then C, and among non-BGP routes of the same type prefer the lowest cost.
  • Domain backup/partition healing: currently possible, but only with a complex configuration, a star topology and giving protection only to the leaves. In the new design with the default conversion functions, can do this with any topology and any available path.
  • Router-level shortest path: currently only between OSPF and cannot change the cost. The new design can do it with OSPF, RIP and EIGRP using per-instance metrics.
  • Traffic engineering: existing design allows this only within instance, but now we can do it across instances.
  • Q. Do the functions have to be common across all the routers? Yes, it has to be consistent across all the border routers. But future work would let it be different.
  • Q. Do you see the potential for work in the standards bodies to standardize these functions? Talking to the router vendors about this.
  • Q. What is the behavior during convergence? We haven’t focused on that. After some time, we converge to a correct path. How can you be sure that it is correct without enforcing a global ordering? We do enforce a global ordering at present.
  • Q. Does your scheme require a centralized entity? We have no such entity. What about between different ASs? …

DONAR: Decentralized Server Selection for Cloud Services

  • Server selection as a customizable constrained optimization. This talk describes a distributed solution to this problem.
  • User-facing services are being replicated across the world. Server selection involves selecting which replica to use for a particular user. Want to be agnostic to the wide-area protocol being used. For example, distributed DNS and HTTP redirection/proxying.
  • Idea was to build a system, DONAR, to which server selection can be outsourced.
  • Policy interface. Naïve policies include round-robin (for load balancing), or location-aware closest-node. But want to support complex policies over many nodes.
  • Policies are represented by constraints. For example, a bandwidth cap, or a split ratio and allowable deviation. Without constraints, just use closest node, but this can lead to massive imbalance.
  • Improvement: add a bandwidth cap on some instances, which now gives some locality, but doesn’t overtax a particular instance (and offloads some traffic to other instances).
  • Improvement: split 10% across ten replicas with a +/- of 5%. The tolerance is unique to this implementation. Gives the ability to trade off network proximity and load distribution.
  • Can have a mix of bandwidth cap, proportional split and tolerance across different instances.
  • For a customer, can define a global linear program that describes the optimal pairing. Minimize network cost (distance) such that load is within tolerance and bandwidth caps are met.
  • Need to do this for each customer, and continuously. Aim is to have potentially hundreds of DONAR nodes, customers and replicas per customer, and tens of thousands of client groups per customer. The linear program has millions of variables per customer.
  • DONAR nodes could measure traffic and optimize locally. But no one node sees the entire client population, and the distribution at each node is skewed.
  • Could maybe aggregate all of the data at a central coordinator. This would end up sharing a lot of data and compromising responsiveness. For example, we would want a node to respond quickly to a flash crowd.
  • Actually came up with a decomposition strategy, for both the objective function and the constraints. Uses a Gauss-Siedel iterative decomposition approach. The summary data shared is only proportional to the number of replicas. Proof in the paper that this converges to the global optimum.
  • Deployed since November 2009, and in production use for two customers. Currently services around one million DNS requests today.
  • Other systems challenges in the paper: network availability, reliable data storage, etc.
  • Experimental setup using CoralCDN with a proportional split across the replicas. Closest node policy is very volatile, whereas DONAR equal split gives much more predictable workloads.
  • Better than simple round-robin, since DONAR keeps the network distance as small as possible (shown by the rank distribution of node distance from the client).
  • Q. How quickly does the global solution converge? Covered in the paper, and usually after one round of hearing from everyone.
  • Q. Can you incorporate server-specific policy like consistency or staleness (cf. weak/eventual consistency, where different replicas have different data)? We assume that we can direct a request to every replica. But we could solve this problem for separate domains.
  • Q. What’s the inaccuracy that comes from geolocation based on the location of the resolver? This has been well studied.
  • Q. What if a server’s settings change or it fails, how long will it take to recompute? Built-in support for liveness updates (either notification or loss of heartbeat), and use a heuristic before we rerun the optimization. Rerun the optimization every two minutes.

Cloudward Bound: Planning for Beneficial Migration of Enterprise Applications to the Cloud

  • Challenge: data privacy issues, such as national privacy laws and indsutry-specific privacy laws (like HIPAA). Challenge: SLA requirements lke response time.
  • Possible solution is hybrid clouds.
  • First focus is on planning hybrid cloud layouts, making cost savings, minimizing response times and bandwidth costs.
  • Second focus is on migrating security policies, such as firewall contexts and ACLs.
  • Contributions: study of the complexity of enterprise applications, first-cut solutions to the two challenges, and validations.
  • Enterprise applications are typically three-tier but with multiple components in each tier, and complex interdependencies.
  • Abstract the planning problem using a graph with vertices for components, and virtual vertices for internal and external users. Each vertex has a size (number of servers), and edges have a number of transactions per second and size of transactions per second. Objective is to maximize cost savings through migration, subject to policy constraints and bounds on the increase in transaction delay. Then partition the graph between local and remote.
  • Approach is to use easily-available information, like computation times of components and communication times on links.
  • Model user response times using bounds on changes to the mean delay and variance.
  • Benefits for cost savings based on the estimates in the Above the Clouds tech report. Based on a non-elastic migration, and future work is to look at using the cloud for peaks.
  • Migration algorithm is based on a reachability matrix to determine necessary security policies.
  • Evaluated based on two case studies, the Windows Azure SDK application and a Campus Enterprise Resource Planning application.
  • Used a cloud testbed to evaluate a thumbnail-making example application. The plan results in a mean delay less than 10% and an increase in variance less than 50%.
  • The campus ERP application involves multiple front-end, business logic and back-end components, in use at Purdue.
  • With a 30% bound on increase in mean delay, get $58k savings by migrating all components. For a 15% bound, get $38k savings by migrating a subset of the components. For a 15% bound with a placement policy (don’t move DBs), still get a $14k saving. Paper contains a sensitivity study on the benefit ratios.
  • Various security policies are also generated and evaluated.
  • Q. How much time did it take to understand the dependency mapping between components? Talked to operators and interviewed them, so the dependencies were extracted by humans. What about license dependencies, such as “may not be run in a VM”? [Taken offline.]
  • Q. Why did the delay increase more than the policy in the graphs? Used PlanetLab before a deadline, so the environment was hostile.
  • Q. Can you comment on the complexity of rewriting applications to run in split mode, which seems to be more important than performance or cost? There is an increasing trend towards service-oriented architectures, which make it easier to do this migration. Haven’t solved this for legacy applications.
  • Q. Did you have a contralocation scheme for preventing e.g. certain pieces of data not being stored in different languages? Constraints based on cloud/non-cloud.

Leave a Reply


kamagra 100mg effets cialis pricing australia 40 mg nexium dosage price viagra singapore generico do viagra 2012 lisinopril 20 mg bid mexico pharmacy viagra tetracycline oral use viagra canada use cialis 2 pills pharmacy viagra canada discount generic 150 viagra kamagra users reviews cipro basic 250mg lisinopril teva 20mg tetracycline 500 mg used generic cialis welfil 20 synthroid 0.125 mg tablet buy levitra 100mg generic option valtrex viagra warfarin use dapoxetine generic uk doxycycline hyclate 500mg 100 mg viagra better viagra 100 costi lasix 40 mg nedir usual bactrim dosage viagra buy brazil kamagra plus tabletki cialis 50mg philippines augmentin mucus stool clomid 150 mg multiples buy generic nolvadex xenical tablete uk hvordan bruke viagra acyclovir generic zovirax viagra prices tesco paxil versus wellbutrin metformin diabetes mellitus scrub typhus doxycycline zoloft drug description zithromax 4 tablets viagra belgium buy cialis drug interactions zovirax suspension infantil 100 mg generic viagra get nolvadex australia fastes viagra delivery erythromycin tablets 500mg prednisone uses allergies thailand viagra price viagra canadian reviews cheap viagra drugs online fake levitra viagra germany price xenical price kuwait viagra pakistani price nexium sales in 2011 mg propecia levitra sustancia online cialis satis liquid viagra pills propecia finasteride generic augmentin 875 mg suspension strattera 80 mg prices lexapro available canada red viagra 600mg viagra patient cost buspar dry skin zovirax tablets uk bactrim en tabletas modo uso levitra augmentin causes gas hydrochlorothiazide getting high lisinopril sinusitis buspar and erythromycin cialis 2.5mg daily purchase cialis 10mg bactrim nuspojave viagra sale review zovirax buy uk viagra genuine cheap strattera 25 mg cost nexium 20 mg costo viagra 8 100mg tetracycline antibiotics purchase natural viagra vegetables buspar dosage effective cialis 10 mg uso buspar paxil interaction cipro 500 mg wikipedia propecia price uk prednisone uses copd viagra uk 25mg zovirax pills breastfeeding generic form levitra buy kamagra bangkok quick delivery kamagra looking viagra pill prednisone 60 mg withdrawal buspar prozac together cialis online comprar lexapro cheaper buying safe viagra order lexapro drug zovirax 2g uk buspar phobie sociale buspar prozac combination doxycycline preventing nausea buy lasix intravenous cialis 5mg einnahme viagra forte plus doxycycline 100mg dairy amoxil amoxicillin 500 mg female viagra india doxycycline nausea chills priligy 30 mg erfahrung medicaments cialis 5mg doxycycline hyclate 20mg celebrex extended use columbian viagra generic viagra pfizer design ejactulation using viagra viagra generic lozenge strattera discussion board different generic viagra metformin milchprodukte uk supplier cialis xenical sample menus discount viagra professional use of viagra 50 buy cialis re cipro rent house taking 2 10mg levitra zovirax tablets malaysia spray viagra price without ed cialis buspar dopamine agonist remedio buspar serve nhs prescription cialis zoloft tablete 50 mg propecia 5mg augmentin intravenous doses buspar negative reviews prednisone 10mg purchase buspar medication wiki propranolol 20 mg bid getting off lasix augmentin posologie sinusite zithromax 250 mg uk lexapro drug recall glucophage 850 mg posologie 50 mg clomid failed viagra causing indigestion metformin hexal tablet shoppersdrugmart viagra viagra natural online xenical rx acheter viagra usa phenergan pill phenergan usage medco viagra price boots cialis price doxycycline extemporaneous doxycycline uk costs viagra 100 mg price flagyl plus cipro online legal cialis qualitest lisinopril 10mg viagra cheap raleigh pfizer viagra kopen nexium tablete nuspojave cialis brand online purchase bactrim 800 paypal doxycycline 200 mg alcohol viagra au online viagra spain online levitra 20mg 8 st kamagra oberhausen cialis prescription get generic viagra suppliers get lisinopril online generic cialis markings buy viagra romania cytotec generic metformin plus glyburide edmonton cialis prescription prices of celebrex phenergan 5mg 5ml viagra generic legitimate 20 mg daily cialis genuine cialis 5mg buy levitra discount prednisone treatment nausea kamagra cost thailand viagra users discussion viagra pakkausseloste clomid success 50 mg cialis medicare cost zoloft from canada prednisone 5mg arthritis generic valtrex price oral prednisone 10 mg cialis 5 mg rate stopping lexapro 5mg cialis online daily augmentin 250 mg bijsluiter prednisone evil drug buy amoxil 250 mg kamagra buy bangkok cialis 2mg5 lexapro 5 mg reviews buspar kaufen fausse couche cytotec 200 indian valtrex lexapro 10 mg ahumada viagra soft tablets lasix 12.5mg cost tesco levitra online online viagra 50mg lamictal versus zoloft levitra 20mg srbija buspar worry super cheap viagra cheapest viagra 800mg generic valtrex uk viagra party drug cialis usp priligy online review viagra canada review 20 ml 30 pills levitra lisinopril price 10 mg nexium causes migraines cheap lisinopril hctz costanza cipro nexium price china starting 20 mg lexapro diflucan the pill zithromax pills online viagra may cause synthroid tablets sizes viagra usa review lowest cost valtrex augmentin suspensie 7 ani levitra online rezeptfrei ranbaxy viagra cheap 25 mg clomid pct propranolol 40mg tablet zoloft 75 mg kamagra 100 mg upotreba generic dapoxetine 60mg lexapro 5 cost buspar after benzo lasix tabletten dosierung viagra legal canada viagra kaufen expressversand purchase viagra shanghai lasix after transfusion metformin buy online minister uses viagra 400 mg viagra.ca xenical drug dosage lexapro and nervousness clomid target pharmacy synthroid alcohol use phenergan us viagra online hongkong celebrex generic name nortriptyline versus lexapro erythromycin 500mg ingredients cvs cialis cost lisinopril generic cost cialis 100mg. price discount cialis free efectos cialis generico chromium versus metformin cialis 5 mg doctissimo generic lexapro list viagra kaufen preis buy metformin 850 mg lisinopril cause infertility prescription drug cipro drug guide metformin buspar medication classification indian country viagra prednisone 20mg dosage get wellbutrin online indian viagra prostatitis viagra online paypal nexium 40mg 40mg cytotec oral pfizer levitra discussione online cialis legit buspar worth it viagra ireland customs diflucan 50 mg advantages sinoretik lisinopril 20 mg prednisone 25mg tablets zoloft 25 mg posologie phenergan boots uk diflucan user reviews recreational levitra use wellbutrin klonopin together online zithromax taking crushed viagra viagra too buy indian viagra equivalent lexapro 20 mg size nexium going generic usp prednisone tablets 2014 viagra pfizer dauer avis kamagra plus chinese viagra pfizer canadian nexium prescription diflucan 250mg found viagra husbands wellbutrin paxil together diflucan 150 mg ringworm apotex generic viagra cialis non generico dubai pharmacy cialis 33 canadian pharmacy levitra viagra 75 mg consequences generika cialis 50 mg lasix 80 mg online viagra cause head clomid tablet pregnancy prednisone buy cheap canadian viagra overnight prednisone 1 mg muse eller viagra kamagra 100mg buy generic cialis illegal kamagra 20mg cipro trust registration prednisone causing cataracts buy propecia discount doxycycline nausea fever buy kamagra polos cialis comparative prices nexium prospect 10 mg 200 mg kamagra uk misoprostol cytotec price buspar viibryd price lexapro us buy cialis online 32 cipro usage doxycycline pharmacy viagra pfizer confezioni prednisone effects lupus wellbutrin muscle pain 25mg viagra pills price lisinopril 5 mg levitra prices uk nolvadex tamoxifen buy periactin online canada order propranolol lexapro generic liquid cialis thailand price viagra coupons pfizer doxycycline 100mg cats buy wellbutrin overnight doxycycline sale clomid 50mg treatment viagra overnight australia propecia 4rx online cialis pharmacy pharmacy prices levitra prednisone tablets surgery overnight viagra celebrex for sale erfahrung cialis 20mg canadian medications viagra viagra generika 100 mg actos versus metformin cytotec sale philippines lexapro pediatric exclusivity cialis canada purchases viagra causes afib strattera generic approval metformin tablet markings bactrim thyroid disorders cialis generica contrareembolso zithromax generic for diflucan online uk viagra brand overnight propecia da 05 mg buspar self esteem wellbutrin sinusitis viagra 100 mg costco adipex wellbutrin together aerococcus urinae doxycycline metformin sr 500 mg cialis 05 mg buy viagra cyprus cialis target market usual dosage metformin glasgow buy cialis viagra france price cheratussin and lexapro buspar and imitrex nolvadex tablets used nolvadex get nexium medication uses nexium 40 mg canada clomid best price parduodu viagra uk priligy dapoxetine price clomid generic philippines cialis uk delay buy clomid philippines lexapro cost help levitra 10 mg n3 lexapro celexa drug glucophage rxlist generic wellbutrin ir doxycycline itchy anus uses of cialis valtrex generic reviews cialis professional generico nexium 40mg spain levitra 10 mg canada bactrim tinnitus buy viagra virus xenical online australia cipro 500 mg pill lexapro street drug kamagra 100mg prijs synthroid drug reactions generico al cialis cialis lavitra order erythromycin cause spots doxycycline cause tinnitus insert cytotec tablets buspar nursing using liquid cialis metformin er 100mg zovirax 400 mg filmtabletten cialis malta pharmacy chinese clomid tablets walmart generic propecia viagra austria kaufen amoxil 250 mg dosage order cialis prescription cialis online legit 40 mg strattera valtrex alcohol use buy clomid dublin lasix backorder uk medix priligy metformin 1000 mg spc buy deltasone prednisolone cialis e20 price typical viagra price cipro 500 mg nedir nexium 5mg nexium cause depression fake indian lisinopril green pill synthroid 88 usp prednisone msds nolvadex generic cheap white viagra 100mg walmart cialis price drug interactions doxycycline costo cialis 2 5 mg nexium 40 mg wholesale cheap viagra wholesale 500 mg glucophage strattera get high diflucan 50 mg precio buspar and ambien buspar work twins using clomid hydrochlorothiazide 25 mg tablets lexapro nausea diarrhea generic sub bactrim viagra price comparison cialis tablets usa cialis generico guadalajara cialis 20 mg kullanimi viagra 50 mg controindicazioni cialis 5 mg dauertherapie levitra 5 mg originale online kamagra paypall viagra buy turkey priligy australia buy odchudzanie tabletki xenical 25 mg lexapro lexapro 20 mg controlled canada levitra online prednisone 400mg buying valtrex uk strattera capsules 40 mg clomid prescription information costo cytotec bolivia lisinopril 10 mg heumann 10 mg de viagra taking 2 25 mg strattera buspar tension headaches lisinopril 20 mg image viagra indian made ubat celebrex 400 mg kamagra 20 mg lexapro prescription drug cialis australia.cs drug lasix 20 mg costo pillole viagra wellbutrin plus vyvanse nuova pillola viagra reductil order xenical buy viagra nairobi metformin causing fatigue 40mg of lasix cymbalta lexapro together amoxil syrup 250mg red viagra usa cialis discount india buy doxycycline periostat generic levitra pill intravenous bactrim doxycycline 500mg reviews cialis mg 5 prezzo levitra uk cost buy kamagra china general viagra tablets viagra 12.5mg experience metformin pill z 70 valtrex leukemia cheapest viagra 100mg phenergan for sale propecia principle muscle cialis lowest prices order doxycycline uk generic cialis problems generic levitra fda cheap viagra japan kamagra jel 5mg viagra acquisto online buspar expiration date cialis tadalafil USA lexapro maoi drugs usando cialis lasix continuous drip levitra professional generico propecia target cialis black cheapest metformin ukpds study amoxil 250 mg 5 cc clomid pills yellow petraeus cialis index lisinopril pill mg online viagra erfahrung viagra goes generic get wellbutrin prescribed generico cialis colombia buspar 30 mg dividose kamagra jelly 100mg 400 mg of wellbutrin zovirax cream online cheap levitra 40mg 150mg clomid follicles medco viagra cost new prices cialis cialis canada .99 metformin drug testing valtrex muscle spasms buying clomid injections cialis prices 5mg erythromycin purchase online dapoxetine cost india cumpar online viagra cost viagra medco generic cialis sweden stop using viagra augmentin na krztusiec celecoxib generic celebrex vitreous detachment cialis generic cialis 10 mg jual cialis 20mg prednisone 9 mg daily cialis 20 mg free lexapro 20 mg reviews generic viagra composition propecia finasteride uk kamagra plus paypal cialis de 05 mg augmentin cipro together levitra uk cheap synthroid 75 mcg tablets cialis wholesale uk prednisone 20 mg zentiva buspar stomach acid synthroid bipolar disorder get levitra prescription walgreens cost levitra buy doxycycline 100 online clomid research uk buy viagra worldwide levitra za muskarce doxycycline antibiotic uses metformin osmotic push phenergan medicine used buy kamagra pattaya cipro 5mg propecia generic name lexapro recreational uses collagenous colitis celebrex Cialis Professional 90 pills augmentin 12h susp bactrim suspension shqip levitra schmelztabletten 10 mg mauritius levitra tablets cipro xl drug buspar pain doxycycline causes hemorrhoids sls levitra tablets pfizer viagra szabadalom mh drugs cialis lexapro 10mg long weaning lexapro generic 3mg cialis cialis online consigli lisinopril iron pills 50mg viagra reviews kamagra halbe tablette nausea from lisinopril discount 150mg viagra purchasing clomid online silvio berlusconi viagra viagra 100mg china cialis 5 mg chronic clomid quanto costa bactrim suspension turkce cialis 2.5 mg prices valtrex dosage generic viagra us price metformin 250 mg dose viagra flushing prevent clomid steroids australia priligy wo kaufen cytotec 100mg metformin philippine price metformin drug dose cipro generic ciprofloxacin kamagra tyggetabletter order wellbutrin sr cialis 100 mg 10 tablett glucophage 850 mg information erythromycin 800 mg lasix medication australia clomid zum muskelaufbau tableti cialis metformin india price order lasix furosemide xenical 120mg tablet nexium generic yet anavar tribulus clomid clomid dosage use zithromax need prescription buy bactrim septra doxycycline 100 mg posologie propecia menopause buspar complications zoloft espanol 50 mg celebrex drug test xenical uk farmasialloyds augmentin comprimate 875 mg levitra 20 mg indicazioni excessive prednisone use levitra street price cialis 20 mg etkisi buy female cialis lisinopril white pill lisinopril hctz tabs generic viagra deutschland cialis 100mg mexico order nexium uk viagra soft pills prednisone 8mg uk recreational wellbutrin use cialis 5 mg occasionalmente lexapro 20mg canada levitra soft tablets zithromax 400 mg suspension lasix generic names usos de lexapro buspar et grossesse doxycycline drug action doxycycline teva 100 mg levitra generico ems lexapro buy generic london drugstore cialis doxycycline price comparison doxycycline mono tablet cialis 36 hr price 200 mg doxycycline gum levitra 20 canadian prednisone rash use clomid order paypal cialis 30 lu 100 mg nexium 40 mg intravenoso celebrex recreational drug diflucan sulfa drug prednisone pill 50 92 lexapro 10 mg embarazo propecia finasteride1mg xenical tabletes buspar hearing loss buspar melatonin neurogenesis discount cialis Washington viagra magic mushrooms buspar depersonalization generic medication lasix lisinopril tableta augmentin duo susp buspar available generic cytotec de pfizer cheap lexapro 10 mg cialis economico online chennai viagra price cialis 5 mg provato cialis age use cialis hepatitus c viagra pharmacy ireland nexium causes gastroparesis cialis 50mg todalafil erythromycin without rx flomax cialis together viagra pfizer turkey purchase viagra china wellbutrin mushroom interaction doxycycline muscle pain nereus hotel cipro buspar focus buy cipla clomid cytotec mercury drugstore cialis backache cause purchase doxycycline online wellbutrin xl 200 mg prednisone interaction medicamenteuse cytotec ghana buy thailand pharmacy cialis valtrex causes itching buspar and vertigo prednisone 15 mg dosage generic bactrim antibiotic uk viagra women lexapro patent canada doxycycline 250mg infection doxycycline harm fetus kamagra online shop viagra generico guadalajara zoloft ativan together lexapro para tinnitus levitra 20 mg billiger strattera de 80 mg 20mg viagra lexapro causing nausea cialis target walmart cialis oad 5 mg 250 mg of phenergan electrical buspar switch viagra from pfizer purchase propecia pill viagra precription online zovirax uso ocular levitra cheaper alternatives clomid 50mg hyperstimulation apo propranolol 40mg 20 mg to levitra nolvadex 20 mg kaufen amoxil 250 mg dosis levitra sinusitis buy xenical singapore lexapro tablets 20mg cialis patient uk brand zoloft online prix doxycycline 100mg viagra target audiences apollo pharmacy viagra cipro liquid price valtrex canadian price doxycycline cost walmart celebrex 200mg kosten lichen planus celebrex houston propecia doctor buspar dreams produk nolvadex synthroid 25 mg prednisone esophagus cipro antibiotic usage 20mg lexapro depression priligy sustancia activa lisinopril uk bactrim get high amoxil amoxicillin 500mg propecia pill cost viagra costs 2011 buying clomid pct cvs diflucan price celebrex 200 mg drowsy levitra 20 tablets viagra india 100 viagra pharmacy direct celebrex cause swelling lisinopril generic prinivil doxycycline 100mg webmd but 2.5 mg cialis cytotec sous langue amoxil and thrush priligy purchase online cost lasix dogs buspar teva 54 walmart pharmacy propecia cialis tablete 5 mg india cena cialis cialis 20 mg buy uday hussein viagra viagra australia information buspar anxiety libido viagra pfizer business prednisone causing dehydration viagra prescription savings vicodin buspar interaction propecia 5mg uk buy kamagra fuerteventura nexium esomeprazol 40 mg pfizer viagra usa lisinopril 20 mg pfizer viagra gel kokaina plus viagra cialis costs us finasterride versus propecia levitra generika uk hydrochlorothiazide directions use viagra uk 150m lisinopril tabletas generic lisinopril diabetes lexapro cheapest price celebrex cost 200mg mexico cialis 2.5 mg bactrim sinusitis cipla viagra buy canada dapoxetine kamagra kaufen schweiz inexpensive cialis online zoloft robitussin dm wellbutrin iv use synthroid tylenol sinus uk clomid online herbal viagra levitra drug pen synthroid tablets dose lisinopril 1 mg buspar fda indications buying kamagra australia xenical in canada levitra generic cheap generic viagra sverige amoxil 500mg wiki facial flushing celebrex metformin und haarausfall cialis tabletler zithromax 500mg 3 pack viagra costs honolulu get viagra infertility nolvadex purchase canada viagra pill women cialis 40 mg cheap prednisone 10mg identification mirtazapine plus wellbutrin lion 120 viagra tablete buy intravenous zithromax cialis and citrus strattera 25 uk cialis 40 mg overdose lisinopril muscle stiffness buspar schedule class valtrex mouse traps buspar and vyvanse prescription of doxycycline propranolol for nausea uso del strattera nexium prescription assistance tanie tabletki cialis cheapviagrageneric viagra diflucan 3 pills amoxil tablets pfizer cialis 20 mg deutschland cipro russi online viagra opinions buspar 5 ht spray nasale viagra buspar gastro 5mg lexapro depression buspar autism synthroid sodium tablets levitra tabs 20mg cialis 20 mg 100 tablets propecia uk prescription kamagra brausetabletten nachnahme viagra tabletten kaufen augmentin 625 mg 21x cialis discount uk clomid 100mg miscarriage clomid 100 mg success augmentin duo sinusitis bactrim syrup usage reviews generic lexapro lisinopril cough cause glucophage cause twins overnite delivery cialis uses of nexium cialis generico rischi lasix 40mg shop 30mg prednisone day lexapro 10 mg anxiety prednisone causing meningitis overnight pharmacy cialis lexapro nausea reflux buspar risperidone prescription drugs lexapro lisinopril muscle atrophy kamagra 100 chewable 7 tablets clomid tablets johannesburg generic drugs lexapro generico viagra sandoz prednisone pain pills kamagra 200mg kaufen zovirax pills information hydrochlorothiazide price cvs metformin mouse cancer buspar fast acting viagra 5mg types skipping zoloft pills buspar kidney failure 500mg er metformin lisinopril causes depression get viagra phuket buspar onde comprar generic viagra box cheapest valtrex cialis aurochem india pills like clomid is buspar helpful buy generic wellbutrin opus nexium viagra label humorous nolvadex price cycle cialis 10 mg posologie tablet valtrex priligy mercury drug nexium mups 20mg kaufen viagra berlin order canadian viagra cialis 100 mg kullananlar celebrex use symptoms tussentijdse bloeding clomid prednisone uses symptoms just starting lexapro viagra 0.5mg lisinopril versus verapamil viagra useless inj lasix 40 mg buying viagra net nexium tablet capsule kamagra overnight metformin 500 kaufen levitra austria apotheke costco cialis coupon dog prednisone 5 mg augmentin pill zovirax 800 mg tabs nexium generic teva prednisone axapharm 5mg lamictal plus zoloft generic wellbutrin headache ruskб skupina viagra buspar vs alcohol kiwi propecia online hydrochlorothiazide purchase online generic cialis 50 mg indication lasix 40 mg zoloft at 50 mg cash price nexium prednisone causing flushing strattera online canada uk kamagra con propecia in theuk viagra 100 mg duracion clomid purchase research prednisone for pertussis zovirax tabletten bijsluiter diflucan uk price uk viagra tabs wo nolvadex kaufen buspar revolution health nolvadex 20mg tablets cialis generic safe levitra 10 mg funciona lexapro psychotropic drug viagra number pill metformin drug card doxycycline 100mg prices viagra suggested use zovirax infusion lisinopril pill markings glucophage 850 bustine doxycycline intravenous dosing viagra 100mg dawkowanie propecia cheap buy erythromycin base tablets prescription free cialis prednisone doses lupus augmentin drug class brand cialis cheap usado cytotec diflucan da 100 mg synthroid doses mg diflucan price mercury lisinopril generic walmart stopping wellbutrin use augmentin 625 mg bijsluiter viagra vaikutusmekanismi medikament celebrex 100 mg asal usul viagra zithromax tablet 250 mg viagra de 15 mg propecia australia advertisement cost for bactrim buspar medication information synthroid discount coupons trustable generic viagra viagra pills london cialis online 200 mg viagra cost indonesia cipro nausea fever viagra discount prescription fertility pills clomid generic viagra .60 100mg 2x zithromax pillen generic wellbutrin actavis zithromax 1g uses cheap 150 mg viagra cipro 250 mg tabs strattera online discount lexapro without insurnace costo diflucan gel buy cialis 2.5 zovirax oral uses costco price levitra doxycycline lupus metformin sr 850 mg drug class celebrex priligy 60 mg kaufen purple generic wellbutrin cialis 5 mg cena 100 mg levitra price propecia mg 1 viagra thailand pharmacy teva generic xenical buspar and advil buying bactrim online lasix 20 mg used viagra uk cost osama using viagra cipro 750 mg prostatitis healthwarehouse cialis cialis indian prescription hydrochlorothiazide 250 mg zithromax dosage get cialis doctor oklahoma viagra prescriptions metformin causes bloating bactrim without water nexium 20 mg 0800 kamagra thailand wholesale tijuana generic viagra use viagra recreation lexapro 20mg cost stop viagra flushing lexapro now generic nexium pills canada doxycycline 100 mg indication clomid 150mg endometriosis cialis american pharmacy augmentin bid tabletas levitra kaufen polen prednisone 10mg 5 days viagra recreational use cialis generico costi viagra montreal buy vegetables like viagra drug classification diflucan psilocybin and buspar zoloft causing headaches doxycycline et nausee phenergan 25 mgs cialis 5mg acheter bactrim causes anemia canadian viagra cialis acidophilus and diflucan us viagra order propecia free red cialis pills original propecia prices levitra 20 mg vs buspar lawsuit liquid cipro cost kegunaan lasix 20 mg buy propecia 12 months viagra online cheap bactrim suspension 5ml metformin sinusitis 3 generic sildenafil viagra kesan clomid 150mg diflucan 150 mg 3 days nexium hp7 20 mg erythromycin mercury drug cytotec tabletas abortivas nexium 20 mg 14 comprimidos viagra cialis usa viagra prescription medicale viagra tabs uk propecia 5mg review augmentin pediatrico 400 mg periactin muscle growth augmentin suspensie prospect buy diflucan cheap miami viagra prescription viagra als partydrug generico del zovirax prednisone misuse pfizer viagra sg viagra drug alternative glimepirida plus metformin prednisone steroid cost buspar for rage does buspar work use viagra directions cipro crush prednisone tablet doses tetracycline salep real kamagra uk pfizer invented viagra get metformin online online fsa viagra hiivasienitulehdus diflucan viagra keskustelu 10mg lexapro reviews costo cialis tijuana lasix uses indication rx augmentin without prescription viagra price levitra 100 mg acyclovir zovirax 200mg viagra usage world diflucan thrush safety sublingual viagra 150 mg thrush from nexium kamagra plus malta diflucan 150 mg posologia rx 20 mg levitra clomid use metformin lexapro klonopin buspar cipro tablets 500 mg gibraltar pharmacy viagra missed buspar dose Female Cialis 30 pills zithromax susp neonates synthroid 80 mg buy doxycycline us celebrex 200 mg used cialis 20mg walgreens chlamydia zithromax 1000 mg dapoxetine 90 mg review augmentin iv bolus kamagra halv tablett viagra aachen kaufen viagra best used canadian drug viagra cytotec 200mg used viagra pill dimensions women use levitra viagra exporter india clomid reviews australia prescription synthroid nexium usage dosage nolvadex 20 mg posologie lexapro 5 mg therapeutic metformin causing itching strattera 100 mg high doxycycline 100mg treats cost iv phenergan metformin shaped pill zovirax tablets spc 1500 mg metformin er generic synthroid buy erythromycin for ileus strattera focus prednisone 100 mg crush up cialis buy lexapro philippines corticosteroids like prednisone zovirax 200 tabletten propranolol causing nausea usual dose augmentin viagra overnight generic buspar d siguiente doxycycline 50 mg wikipedia propecia bottle cost 100mg. vardenafil levitra viagra 100mg canada highest mg strattera kamagra plus cialis viagra plus online cialis online warsaw lexapro drug recreational order cialis mexico shoppers drugmart viagra viagra use wikipedia mg of buspar strattera causing migraines gebrauchsanweisung viagra 100mg anwendung viagra 100mg viagra write prescription 3 days without zoloft prednisone tablets australia nolvadex d generico tetracycline drug mechanism xenical 120 mgs viagra plus dapoxetine cutting metformin pills cheap levitra overnight kamagra 100mg nebenwirkung generic levitra used diflucan is dangerous lexapro globus 3000 mg valtrex kaboom versus viagra bactrim cost nolvadex sale gnc generic zoloft color diflucan sospensione 10 mg cialis 5 mg suficiente lexapro drug erowid pret augmentin 500 mg bactrim paed suspension propecia vellus zovirax tablets pregnant doxycycline 100mg pimples still exhausted synthroid kamagra 100mg 025 nolvadex thailand online buspar safe anxiety wellbutrin plus effexor nuhair versus propecia cialis 30mg dividere cialis 10 mg zithromax suspension rxlist wellbutrin prescribed uk cialis 40mg buy abilify plus wellbutrin zoloft cost 2012 forum buy viagra nexium alternatives australia cheapest 800mg cialis buy viagra itaewon erythromycin 500mg indications viagra online real lisinopril drug design prednisone 60 mg prednisolone zovirax pills 400 mg erythromycin gel online pill zoloft 50 mg aurochem viagra 150 mg zithromax canada online cytotec usos pharmacy cialis silagra doxycycline malaria online wellbutrin 150 mg bijsluiter buspar cfs review order viagra viagra stop flushing xenical deutschland kaufen nexium 20mg wirkung split cialis tablet buying surplus cialis acyclovir zovirax drug nexium color pill viagra fom india lisinopril pill dosage valtrex 500mg 30 100mg viagra review diflucan sinus fungus metformin unlabeled use mg buspar buspar overdose effects 24 hr viagra delivery cialis 5mg oad buy zovirax capsule viagra 6800mg dosage viagra price reduction lasix 80 mg tablet buy strattera 60mg generic viagra youtube buy propecia ny dapoxetine drug information lisinopril generic image harga celebrex 100 mg augmentin costco price levitra 20 mg pill cheapest generic wellbutrin sales cheap kamagra zovirax 400 mg price levitra 50 mg fiyati xenical 120 kaufen viagra sus consecuencias clomid used steroids cialis original use lisinopril 10 mg medicine nexium plus 40 cialis priminence 50 mg metformin tablets dose erfahrungsberichte cialis 10 mg metformin anxious drug class prednisone drugs like cialis 20 mg lexapro depression lexapro price generic wellbutrin sertraline together uk generic cialis lisinopril hydrochlorothiazide 10mg 12.5 sale speziato cipro lupin lisinopril 20 mg zoloft overdose 300mg viagra 25 mg preis viagra buy 100 500 mg valtrex daily cialis 200mg tab cipro dangerous use viagra pfizer buy levitra online 7 rx celebrex cipro xl 1000mgibuprofene zithromax generic walgreens pharmacy malaysia viagra diflucan 50 mg dosage get viagra now viagra prescriptions tucson pfizer viagra monopoly xenical orlistat kaufen phenergan tablete dejstvo levitra usual dosage strattera 60 mg kaufen lexapro pbs price glucophage sivuvaikutukset nexium infusion dosage cipro document status propranolol versus timolol buy cialis 20 mg viagra 100mg instructions acquistare viagra online wakgreens cialis cost purchase Levitra 20 mg doxycycline 100mg doziranje viagra generico preco doxycycline 100mg mrsa cialis 20 mmg generico viagra barato cheap generic clomid safe generic cialis cialis 5 mg 28 tabl pseudomembranous colitis augmentin levitra 20 mg pzn safe cheap levitra nolvadex uterus 10mg generic levitra generic cialis directions bestel kamagra online 2 cialis pills hcg versus viagra blue viagra pfizer canadian pharmaceuticals viagra xenical pakkausseloste non prescription hydrochlorothiazide furosemide hydrochlorothiazide together nolvadex price thailand cialis lutschtabletten viagra quem usou wellbutrin cause tremors tabletki cialis cena iontophoretic delivery lisinopril celebrex chair price 4 zithromax tablets augmentin 500 mg suspension get propecia fast strattera generic launch nidation sous clomid doxycycline us army keguanaan cialis 20mg price cialis walgreen 50 mg prednisone asthma usa kamagra cialis fc tablet cheratussin ac prednisone buy zithromax pills wellbutrin sr discussion lisinopril 10 mg efectos viagra muscular dystrophy lexapro have generic xenical otc drug zithromax 500mg tabs drug allergy erythromycin keuchhusten prophylaxe erythromycin lisinopril tablets india free 20mg cialis wellbutrin causes anger buspar personality changes zoloft hippocampus clomid tablets 100g cialis cramps muscle tinnitus doxycycline cipro enterococcus coverage metformin und zyklus strattera cost us prices on viagra methylprednisolone 20 mg prednisone cipro online overnight zovirax suspension ingredients diflucan fluconazole cheap makes generic cialis wellbutrin xl 150 canada generic zithromax price xenical pills buy 10 mg di viagra buy zovirax aus farmaco levitra 20 mg viagra sale qatar pfizer viagra film 10 mg generic levitra generic4all dapoxetine buy cytotec usa amoxil tablets warnings viagra usa walmart levitra 40 mg reviews cialis tablete uputstvo lexapro generic drug cialis 20 mg wikipedia viagra of india adderal buspar use doxycycline gel price use of augmentin 1000 clomid buy cheap prednisone 5 mg online viagra online hangery zithromax 2mg dapoxetine online buy nioxin propecia together generic 150 mg viagra how use propecia xenical tablets emagrece no prescription propecia prijs cialis 20 mg buspar daily dose diflucan cause discharge bactrim tablet strength nexium 20 mg prospect cialis verstopte neus viagra rxmeds buy viagra express cipro buy lisinopril 10 mg price buspar cause insomnia alexander rus viagra green viagra australia periactin uk buy wellbutrin 300 mg nausea cialis apteka online buy levitra mauritius viagra kaufen hongkong viagra modalita uso 250 mg doxycycline acne Cialis Tabs Canada wellbutrin generic dosages cialis 300mg price lisinopril api buspar official site hydrochlorothiazide tinnitus kroger viagra cost zoloft sertralin kaufen vistaril and buspar prednisone 5mg ears viagra generic canada bangkok prescription cialis 1 nexium 40 mg dapoxetine in usa augmentin kaufen candesartan hydrochlorothiazide tablets synthroid 25 mg bula viagra pfizer us prednisone tablets horses valtrex generic purchase what causes propecia synthroid sinus infection augmentin 1 gr tablet glyburide versus metformin healthymen buy viagra buy viagra 600mg lexapro buy online buspar dyspepsia drug class augmentin wellbutrin v buspar lexapro 20 mg ocd nexium cause acne tablet augmentin 625mg phenergan intramuscular dose tetracycline 250 mg acne soft cialis online augmentin 600 suspensie viagra getup generic lexapro prescription price augmentin 875 kamagra overnight usa opinion viagra generica kamagra pills 500mg generic viagra eu discount buy viagra cialis uk boots prednisone cause cellulite cialis muscle aches dosage generic viagra nexium 20mg uk viagra in puket viagra prices sa nexium tablets 50mg zoloft 50 mg vidal periactin 4mg tablets 100 medicamento glucophage 500 mg cialis zomg tadalafil buspar for sale tetracycline antibiotics use 500 mg metformin hcl forum kamagra 100mg