code: def _process_outgoing_msg(self, sink_iter):
          
          LOG.debug('NetworkController processing outgoing request list.')
          # TODO(PH): We should try not to sent routes from bgp peer that is not
          # in established state.
          from ryu.services.protocols.bgp.model import (
              FlexinetOutgoingRoute)
          while self.is_connected:
              # sink iter is Sink instance and next is blocking so this isn't
              # active wait.
              for outgoing_msg in sink_iter:
                  if not self.is_connected:
                      self._socket.close()
                      return
                  if isinstance(outgoing_msg, FlexinetOutgoingRoute):
                      rpc_msg = _create_prefix_notification(outgoing_msg, self)
                  else:
                      raise NotImplementedError(
                          'Do not handle out going message of type %s' %
                          outgoing_msg.__class__)
                  if rpc_msg:
                      self._sendall(rpc_msg)
              self.pause(0)
  
          # Stop incoming connection.
          if self.green_in:
              self.green_in.kill()
docs: For every message we construct a corresponding RPC message to be
          sent over the given socket inside given RPC session.
  
          This function should be launched in a new green thread as
          it loops forever.