UWA Logo Computer Science & Software Engineering
Computer Networks (CITS3230) - Lecture 12
 
    CITS3230  |  help3230

Varying needs introduce varying complexity

  • Protocols address a wide variety of problems and needs. They employ many mechanisms, in combination:
    • sequence numbers,
    • adaptive timeouts,
    • negative acknowledgments,
    • piggybacking,
    • pipelining,
    • sliding-windows, and
    • fragmentation.
  • Multiple techniques often exist in a single protocol, with increased complexity.
  • Layered protocols encourage a distinct header for each layer and (ideally) an independence between layers.
  • Much common work (e.g. checksums and sequence numbers) is implemented in multiple layers.
  • Protocols attempting "optimal" delivery of their data will assess current conditions of:
    • bandwidth and its effect on timing,
    • frame capacities as dictated by the lower layer,
    • expected and observed error rates,
    • expected and observed round-trip times,
    • level of activity (on shared media),
    • priority of data to be delivered, and
    • the importance of reliable delivery.


Computer Networks (CITS3230), Lecture 12, p3, 2nd June 2008.