49 lines
		
	
	
		
			1.0 KiB
		
	
	
	
		
			JavaScript
		
	
	
	
	
	
		
		
			
		
	
	
			49 lines
		
	
	
		
			1.0 KiB
		
	
	
	
		
			JavaScript
		
	
	
	
	
	
| 
								 | 
							
								config({
							 | 
						||
| 
								 | 
							
								  log:{
							 | 
						||
| 
								 | 
							
								    time:true
							 | 
						||
| 
								 | 
							
								  },
							 | 
						||
| 
								 | 
							
								  MEMPOOL:1E7,
							 | 
						||
| 
								 | 
							
								})
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								port(DIR.IP('udp://localhost'))
							 | 
						||
| 
								 | 
							
								connect(DIR.IP('udp://localhost:5568?secure=12:34:56:78:00:01'));
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								// agent with high payload
							 | 
						||
| 
								 | 
							
								function ag(options) {
							 | 
						||
| 
								 | 
							
								  this.goto=null;
							 | 
						||
| 
								 | 
							
								  this.root=null;
							 | 
						||
| 
								 | 
							
								  this.data=options.data;
							 | 
						||
| 
								 | 
							
								  this.act = {
							 | 
						||
| 
								 | 
							
								    check: function () {
							 | 
						||
| 
								 | 
							
								      log('Waiting');
							 | 
						||
| 
								 | 
							
								      this.root=myNode();
							 | 
						||
| 
								 | 
							
								      var links=link(DIR.IP('%'));
							 | 
						||
| 
								 | 
							
								      if (links && links.length) 
							 | 
						||
| 
								 | 
							
								        this.goto=links[0];
							 | 
						||
| 
								 | 
							
								      else sleep(500);
							 | 
						||
| 
								 | 
							
								    },
							 | 
						||
| 
								 | 
							
								    move: function () {
							 | 
						||
| 
								 | 
							
								      log('Going to '+this.goto);
							 | 
						||
| 
								 | 
							
								      moveto(DIR.NODE(this.goto))
							 | 
						||
| 
								 | 
							
								    },
							 | 
						||
| 
								 | 
							
								    back: function () {
							 | 
						||
| 
								 | 
							
								      log('Going back to '+this.root);
							 | 
						||
| 
								 | 
							
								      moveto(DIR.NODE(this.root))      
							 | 
						||
| 
								 | 
							
								    },
							 | 
						||
| 
								 | 
							
								    end: function () {
							 | 
						||
| 
								 | 
							
								      log('I am back. Terminating (#data='+this.data.length+')');
							 | 
						||
| 
								 | 
							
								      kill();
							 | 
						||
| 
								 | 
							
								    },
							 | 
						||
| 
								 | 
							
								  }
							 | 
						||
| 
								 | 
							
								  this.trans = { check:function () { return this.goto?'move':'check' },
							 | 
						||
| 
								 | 
							
								                 move:'back',
							 | 
						||
| 
								 | 
							
								                 back:'end' }
							 | 
						||
| 
								 | 
							
								  this.next = 'check';
							 | 
						||
| 
								 | 
							
								}
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								start()
							 | 
						||
| 
								 | 
							
								var a1 = array(20000,Math.random);
							 | 
						||
| 
								 | 
							
								print(create(ag,{
							 | 
						||
| 
								 | 
							
								  data : a1 
							 | 
						||
| 
								 | 
							
								},2))
							 |