I think there should be separation between HTTP codes and errors caused by lower-level network issues.