CS3 Computer Communications
Historically, computing and telecommunications were viewed as distinct
technical entities. Now, with the advent of cheap computers, mobile devices
and sophisticated computer networks, these have merged to provide a set of
information resources and facilitaters which pervade almost all aspects of our
lives. The course examines the fundamental
techniques used to implement the sharing of information between computers,
and applies them to all levels of communication, from the transmission of bits
along physical connections to the distribution of computations
over many processors.
The formal requirements for this course are a general knowledge of how computers
work, how humans communicate and programming expertise.
This course is a pre-requisite for the CS4 Computer Networking module, which covers
recent developments and future trends in computer networking.
Introduction and overview: information, time, space, protocols
Information: sharing information in a distributed system
Time: achieving synchronisation in a distributed system
Space: achieving connectivity in a distributed system
Message broadcast networks: characteristics, architectures, standards
Message switching networks: characteristics, architectures, standards
Inter-networks: characteristics, architectures, standards
Case studies: perhaps two reasonably sized examples
Real world issues: Internet, OSI, social implications, local experience.
The module is delivered by Eric McKenzie.
The method of delivery is two lectures per week. There are no formal tutorials.
An examination paper accounts for 75% of the mark. Coursework
accounts for 25% of the mark.
There is a piece of assessed coursework to implement components of
an internationally standard connection-oriented protocol during
the second half of the term; a set of short exercises in the first half of
the term are used as a basis for this work. The coursework involves
understanding a protocol specification, and then the design
and implementation of software modules to complete a software system
that simulates real-time communication with a trusted implementation over
a channel with non-ideal properties.
The short exercises count for 20% of the overall coursework mark; they
are promulgated at the beginning of week 3 of term, must be
submitted at the beginning of week 5 of term, and are returned
at the end of week 5 of term.
The main exercise counts for the remaining 80% of the overall coursework;
it is promulgated at the end of week 6 of term, must be
submitted by the end of term, and is returned at the beginning of the next term.
(**) William Buchanan, "Distributed Systems and Networks", McGraw Hill 2000.
(*) Andrew Tanenbaum, "Computer Networks" (3rd edition), Prentice Hall, 1996.
() Douglas Comer, "Computer Networks and Internets", Prentice Hall 1997.
() Fred Halsall, "Data Communications, Computer Networks and Open
Systems" (4th edition), Addison Wesley 1996.
() Larry Peterson and Bruce Davie, "Computer Networks: A Systems
Approach", Morgan Kaufman 1996.
() William Stallings, "Data and Computer Communications" (5th edition),
Prentice Hall 1997.