Ejemplo n.º 1
0
 def __init__(self, server):
     Module.__init__(self, server)
     # Should consider to use a subclass of vlcp.service.connection.tcpserver.TcpServerBase
     self.connections.append(
         TcpServer(self.url, MyProtocol(), self.scheduler))
     self.routines.append(MyServer(self.scheduler))
Ejemplo n.º 2
0
                       '--parallel',
                       type=int,
                       help='When in client mode, start multiple clients',
                       metavar='NUM',
                       default=1)
    args = parse.parse_args()
    s = Server()
    if args.server and args.client:
        print('Cannot specify both --server and --client')
        sys.exit(1)
    elif not args.server and not args.client:
        print('Must specify either --server or --client')
        sys.exit(1)
    elif args.server:
        tp = TcpTestProtocol(True)
        conn = TcpServer('tcp://%s:%d/' % (args.bind, args.port), tp,
                         s.scheduler)
        sampler = Sampler(s.scheduler, args.interval, True)
        conn.start()
        sampler.start()
    else:
        tp = TcpTestProtocol(False)
        tp.totalsend = args.time
        sampler = Sampler(s.scheduler, args.interval, False)
        for _ in range(0, args.parallel):
            conn = Client('tcp://%s:%d/' % (args.client, args.port), tp,
                          s.scheduler)
            conn.start()
        sampler.start()
    s.serve()
Ejemplo n.º 3
0
            return (tmpl % params)

    async def handlehttp(self, event):
        if event.stream is not None:
            event.stream.close(self.scheduler)
        if event.connmark == event.connection.connmark and event.connection.connected:
            #outputstream = Stream()
            document = self.formatstr(
                self.document, (escape_b(event.host), escape_b(
                    event.path), escape(repr(event.headers)).encode('utf-8')))
            outputstream = MemoryStream(document)
            http.startResponse(event.connection, event.xid, b'200 OK', [],
                               outputstream)
            #for m in outputstream.write(self.document, self, True):
            #yield m


if __name__ == '__main__':
    logging.basicConfig()
    s = Server()
    #s.scheduler.debugging = True
    #s.scheduler.logger.setLevel(logging.DEBUG)
    #Http.debugging = True
    #Http._logger.setLevel(logging.DEBUG)
    http.createmessagequeue(s.scheduler)
    routine = MainRoutine(s.scheduler)
    routine.start()
    mgt_conn = TcpServer('ltcp://0.0.0.0:8080/', http, s.scheduler)
    mgt_conn.start()
    s.serve()
Ejemplo n.º 4
0
    def main(self):
        while True:

            connectEventMatcher = OpenflowConnectionStateEvent.createMatcher()
            yield (connectEventMatcher,)
           
            # here event must be connect event
            self.connectStateHandler(self.event)

if __name__ == '__main__':

   
    #logging.basicConfig(format='%(asctime)s-%(name)s-%(levelname)s : %(message)s',level=logging.DEBUG)
    logging.basicConfig(format='%(asctime)s-%(name)s-%(levelname)s : %(message)s')
    log = logging.getLogger('l2switch')
    log.setLevel(logging.DEBUG)

    of_proto.debuging = True
    
    #manager['server.debugging']=True
    loopServer = Server()
    loopServer.scheduler.logger.setLevel(logging.DEBUG)

    tcpServer = TcpServer("tcp://127.0.0.1",of_proto,loopServer.scheduler)
    tcpServer.start()
    
    switch = l2switch(loopServer.scheduler)
    switch.start()

    loopServer.serve()