Hey Steven,
First of all, apologies for a late response.
I reckon you're building gRPC from github then. If so, please ignore the last message.
To set a TOS value you can provide a custom dialer in the dial options using WithDIaler(). Now how you use this dialer to create a net.Conn object is entirely your discretion. At this point it's more about what golang than gRPC. The following link might help with setting socket options on the fd(both before and after calling Connect):
Best,
Mak