Skip to content

A clarification in document #16

@stkim1

Description

@stkim1

Hello @Redundancy,

I've recently stumbled upon go-sync and quite impressed with the underlying implementation and its pairing tests. Test cases easily double ( or nearly as much as triple in some cases ) workload and it's a bit discouraging to see them unnoticed by others. Plus, go-sync appears to have broader platform coverage as it stays away from <netinet/in.h> and <arpa/inet.h>. 👍

A reflection of questions arises after following the code base.

In README, it is pointed that

The ZSync mechanism has the weakness that HTTP1.1 ranged requests are not always well supported by CDN providers and ISP proxies. When issues happen, they're very difficult to respond to correctly in software (if possible at all). Using HTTP 1.0 and fully completed GET requests would be better, if possible.

This is a very appetizing point as it is not unusual to face such issue from low-end hosting services for unbeknown reasons. Looking into DoReqeust of HTTPBlockSource where its header is composed, however, we can see the operation requests HTTP 1.1 and Range specifically. I thought there would be a fallback HTTP 1.0 measure to encounter a possible failure, but it was no avail.

I might not have a comprehensive understanding of how go-sync is built. If you could point me a direction where I should turn my head, it would be very much appreciated.

Thank you very much for this charming work!

Metadata

Metadata

Assignees

Labels

No labels
No labels

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions