v-usb, zener diodes and circuit
Although USB uses 5V as power supply, both datalines are rated at


min. 2.8V - max. 3.6V for HIGH
min. 0.0V - max. 0.3V for LOW


This means that the inputs on host side, your PC/hub/..., must not be driven higher than 3V6. Your controller (AVR) on the other hand, when fed from 5V, attempt to drive these pins up to 5V causing the host side input circuitry (on your PC) to fail.

There are two scenarios to solve this situation:


You lower power supply for the AVR to 3.6V. The controller can no longer drive the data lines too high to damage input circuitry on PC (host).
(This is in your schematics) You power the AVR from 5V, but clip the voltages on its outputs with a zener to the max 3.6V. In this case the resistors definitely go between AVR and zener, otherwise you overdrive the AVR outputs.