If you're only interested in looking at HTTP requests, then it's possible to do that by installing a web proxy and configuring Android to use it. However, that's not completely reliable, as not all apps respect the central proxy settings: Firefox is an example of an app that doesn't.
A web proxy doesn't require root, but the user has to set it up by hand: you can configure it automatically only if you have root. If that weren't the case it would be a bit of a security problem in Android: a normal app could eavesdrop or otherwise interfere with other apps' network communication.
Of course, even for real packet sniffing, you only need to root the device if you want to install the sniffer on the device. To see the device's network traffic, it's much easier and more convenient to install a sniffer on a desktop Linux machine acting as a (Wi-Fi) router.