|  | @@ -40,12 +40,12 @@ func (this *Config) GetSendingInFlightSize() uint32 {
 | 
											
												
													
														|  |  	return size
 |  |  	return size
 | 
											
												
													
														|  |  }
 |  |  }
 | 
											
												
													
														|  |  
 |  |  
 | 
											
												
													
														|  | -func (this *Config) GetSendingWindowSize() uint32 {
 |  | 
 | 
											
												
													
														|  | -	return this.GetSendingInFlightSize() * 4
 |  | 
 | 
											
												
													
														|  | -}
 |  | 
 | 
											
												
													
														|  | -
 |  | 
 | 
											
												
													
														|  | -func (this *Config) GetSendingQueueSize() uint32 {
 |  | 
 | 
											
												
													
														|  | -	return this.WriteBuffer / this.Mtu
 |  | 
 | 
											
												
													
														|  | 
 |  | +func (this *Config) GetSendingBufferSize() uint32 {
 | 
											
												
													
														|  | 
 |  | +	size := this.WriteBuffer / this.Mtu
 | 
											
												
													
														|  | 
 |  | +	if size < this.GetSendingInFlightSize() {
 | 
											
												
													
														|  | 
 |  | +		size = this.GetSendingInFlightSize()
 | 
											
												
													
														|  | 
 |  | +	}
 | 
											
												
													
														|  | 
 |  | +	return size
 | 
											
												
													
														|  |  }
 |  |  }
 | 
											
												
													
														|  |  
 |  |  
 | 
											
												
													
														|  |  func (this *Config) GetReceivingWindowSize() uint32 {
 |  |  func (this *Config) GetReceivingWindowSize() uint32 {
 | 
											
										
											
												
													
														|  | @@ -56,8 +56,16 @@ func (this *Config) GetReceivingWindowSize() uint32 {
 | 
											
												
													
														|  |  	return size
 |  |  	return size
 | 
											
												
													
														|  |  }
 |  |  }
 | 
											
												
													
														|  |  
 |  |  
 | 
											
												
													
														|  | -func (this *Config) GetReceivingQueueSize() uint32 {
 |  | 
 | 
											
												
													
														|  | -	return this.ReadBuffer / this.Mtu
 |  | 
 | 
											
												
													
														|  | 
 |  | +func (this *Config) GetReceivingBufferSize() uint32 {
 | 
											
												
													
														|  | 
 |  | +	bufferSize := this.ReadBuffer / this.Mtu
 | 
											
												
													
														|  | 
 |  | +	windowSize := this.DownlinkCapacity * 1024 * 1024 / this.Mtu / (1000 / this.Tti) / 2
 | 
											
												
													
														|  | 
 |  | +	if windowSize < 8 {
 | 
											
												
													
														|  | 
 |  | +		windowSize = 8
 | 
											
												
													
														|  | 
 |  | +	}
 | 
											
												
													
														|  | 
 |  | +	if bufferSize < windowSize {
 | 
											
												
													
														|  | 
 |  | +		bufferSize = windowSize
 | 
											
												
													
														|  | 
 |  | +	}
 | 
											
												
													
														|  | 
 |  | +	return bufferSize
 | 
											
												
													
														|  |  }
 |  |  }
 | 
											
												
													
														|  |  
 |  |  
 | 
											
												
													
														|  |  func DefaultConfig() Config {
 |  |  func DefaultConfig() Config {
 |