I would go for higher than 16K. I believe BitTorrent's default minimum chunk size is 64K, for example. It really depends on the use case in question though, if you're doing random writes then larger chunk sizes quickly waste a ton of bandwidth, especially if you're doing recursive rewrites of a tree structure.
Would a variable chunk size be acceptable for whatever it is you're building?
Would a variable chunk size be acceptable for whatever it is you're building?