There seems a hang in agent that down the usage percent of bandwidth
As the title. Test image is about 140M(compress size) and has 14 layers. bandwidth is 50MB/s ingress and 40MB/s egress. One blob size is about 50M. the agent trys to make connections until reach the capacity. then agent spends about 30s to complete downloading the blob.
the time is too long. and seems there is a hang before start download. Need deep investigation.
Did you pull the layers sequentially or concurrently?
3 layers everytime concurrently. some layers download quickly and some not. but it spends 40s in total. and i checked the log. there seems some hang in downloading blobs. the instance i mentioned above is a typical one. some blob hung for about 15s and so on. and download will be faster when i adjust bandwidth limit higher.
Is the origin cache warm (i.e. did you push the image through proxy first)? There will be a hang if the agents have to wait for the origin to lazily fetch the blob.
yes. it's warm. how long does it keep before agent disconnect from a peer if no pieces found in remote peer? it is expected that agent disconnect some connections and retry some other peers.
That depends on configuration. Are you just using the defaults?
yes. i will set log level to debug and do more test next step.
This is what you were asking about btw (lib/torrent/scheduler/config.go):
// ConnTTI is the duration a connection will exist without transmitting any
// needed pieces or requesting any pieces.
ConnTTI time.Duration `yaml:"conn_tti"`
Default is 30s.