Food and drink are absolutely permissible on German trains. Just like with the food, you can purchase drinks on long distance trains and many RE trains as well. RB trains don't always have someone selling items, since these journeys are much shorter.