Ideally, when taking a dog for a walk, the dog is at one side and not pulling towards the rear or in front. You simply do not want any tension on the leash. This is how the dog must be trained to properly walk on a leash. There are number of ways to do this and one of which is to use what's called a muzzle leash.
This special device has a strap that goes around the dog's snout and behind the ears and then around the neck. And instead of the snap fastening onto the neck area, the snap fastens onto the area on the snout. The way this works the and, is that when the dog teams to pull ahead his head is pulled to the side because of the snout fastened leash. This is quite annoying to the dog and at first he or she may balk and really throw some fits about this annoying device.
But because it is so annoying, is what makes it so effective in training the dog not to pull. Eventually, the dog is so annoyed by the fact that his head is constantly being pulled around when he leads ahead when he's not supposed to that he began slowing down and thus maintaining slack in the leash. Anytime the dog forgets intention is applied to the leash his head is automatically pulled around.
It should be noted that this absolutely does not harm the dog. There is no jerking or twisting involved in this process. It simply works because of the annoyance factor created when tension is applied in the head is turned around.
These special muzzle devices come in all sizes to fit any size dog. Also, it's advised to use a relatively short leash. In other words, do not have a leash 6 to 8 feet long were the dog is allowed to lead ahead before there is any tension placed on the muzzle. You should strive to only have a leash of about 3 feet long so that the dog has very little leeway with creating the tension. In this way the dog learns to maintain contact with the owner during the walk very near to his or her side. That's the ideal situation for going on a walk.