moved address parsing to parse_addr and fixed diffserv parsing