code: func (s *Socket) Write(frame []byte) (int, error) {
  	if s.err != nil {
  		// is the dnstap tool listening?
  		if err := openSocket(s); err != nil {
  			return 0, fmt.Errorf("open socket: %s", err)
  		}
  	}
  	n, err := s.enc.Write(frame)
  	if err != nil {
  		// the dnstap command line tool is down
  		s.conn.Close()
  		s.err = err
  		return 0, err
  	}
  	return n, nil
  
  }
docs: // Write a single Frame Streams frame.