250 likes | 390 Views
Computer Communications. An Introduction Nigel Topham Rm 2502, JCMB npt@inf.ed.ac.uk Office hours: Tuesdays 1-2pm, semester 2. Polite requests…. Please set mobile phones to silent Please mute the sound on your laptop Actually, you should not need to use it during the lecture
E N D
Computer Communications An Introduction Nigel Topham Rm 2502, JCMB npt@inf.ed.ac.uk Office hours: Tuesdays 1-2pm, semester 2
Polite requests… • Please set mobile phones to silent • Please mute the sound on your laptop • Actually, you should not need to use it during the lecture • Printed lecture notes are available and there is space to scribble notes • Please interrupt at any point with questions
Overview • This course introduces the fundamentals of computer communications • Computer networking has seen phenomenal growth • Almost entirely within last two decades • In commerce, education, entertainment and the home • The Internet connects hundreds of millions of people worldwide • How does it work? • What fuels its growth? • How can it be used effectively? • Communication is the act of sharing information • Two ways to explore the science of communication • Top down: from services to bit-level communication • Bottom up: from basic concepts to higher-level concepts • This course is mostly the latter, but not exclusively
Predicting Technology can be Tricky… • "This 'telephone' has too many shortcomings to be seriously considered as a means of communication. The device is inherently of no value to us." • Western Union internal memo, 1876 • “I think there is a world market for maybe five computers.” • Thomas Watson, chairman of IBM, 1943 • “Computers in the future may weigh no more than 1.5 tons.” • Popular Mechanics, forecasting the relentless march of science, 1949 • “There is no reason anyone would want a computer in their home.” • Ken Olson, president, chairman and founder of DEC, 1977 • “640K ought to be enough for anybody” • Bill Gates, 1981 • “100 million dollars is way too much to pay for Microsoft” • IBM, 1992 • “I can’t predict the future, but it will arrive sooner than you expect” • Nigel Topham, 2006
Context • No pre-requisites for this module, apart from . . . • Basic understanding of how computers work • Knowledge & experience of practical computer network usage • Appreciation of human communication • The will-power to read (sometimes arid) textbooks • A desire to further your knowledge in computer communication • A willingness to communicate • This course is a pre-requisite for Inf4 Computer Networks • The Inf4 module covers • More recent developments • Future trends • Computer networks in greater depth
Syllabus • Introduction and Overview: • Motivation • Information, time, space, protocols • Information: • Sharing information in distributed systems • Time: • Synchronising information transfer • Space: • Connectivity in distributed systems • Message broadcast networks: • Characteristics, architectures, standards • Message switching networks: • Characteristics, architectures, standards
Syllabus (continued) • Inter-networks: • Characteristics, architectures, standards • Case studies: • Couple; which could be, for example, factory automation and electronic mail • Real world issues: • Internet, OSI, social implications, local experience
Activities • Usual two lectures per week • Monday 11.10am – 12noon, in JCMB 6301 • Thursday 11.10am – 12noon, in JCMB 6301 • No formal tutorials • Post questions to eduni.inf.course.com newsgroup (not eduni.inf.ug3 as written in handout) • Office hours: • Tuesdays 1-2pm throughout this semester, JCMB rm 2502 • Un-assessed exercises suggested to provoke thought and discussion • Two assessed practical exercises
Assessment • Examination • 75% of course mark • Past papers available from the School Archive or from Course web page • www.informatics.ed.ac.uk/teaching/exam_papers • Two assessed practical exercises • 25% of course mark
Recommended Reading • Background reading is ESSENTIAL • Recommended reading (**) Computer Networks(4e), Andrew S. Tanenbaum, Pearson, 2003 (**) Computer Networks and Internets (4e), Douglas Comer, Pearson, 1997 (*) Data and Computer Communications (7e), William Stallings, Pearson, 2003 Distributed Systems and Networks, William Buchanan, McGraw Hill, 2000 Data Communications, Computer Networks and Open Systems (4e), Fred Halsall, Addison-Wesley, 1996 Computer Networks: A Systems Approach, Larry Peterson & Bruce Davie, Morgan-Kaufman, 1996
Handouts • Weekly summaries: • Summary of lecture and previous Thursday lecture • Recommended text reading for lectures • Occasional informal exercises, which are not assessed • Points to ponder • Occasional specialist note • Copy of slides • Tips for a successful outcome • Don’t rely on perfect one-way communication [ lecturer -> student ] • Question assumptions • Check statements of fact in textbooks • Look for inconsistencies • Respond . . . And communicate!
Surviving the Complexity of the Subject • Computer communications is a complex subject • Many distinct technologies with different nomenclature • Many products with different proprietary names for similar products • Internetworking, by definition, involves all such technologies • There’s no single underlying theory • There’s no single unified terminology • There is a profusion of TLAs which can confuse and distract • However, the principles are not difficult • This course focuses on principles rather than details • Not interested in details of how to wire up a network • But we need awareness of Cat5 versus Cat3 wiring schemes • Not interested in implementation of congestion control protocols • But we need awareness of the fundamental congestion control algorithms • Similar approach taken to each concept we encounter
Most Students do Survive this Course • Typical spread of marks for an undergraduate course
Who What When Where Why? • Who are the communicating agents? • Digital computers, performing digital communication • What do they communicate? • Any information that computers can handle • When (i.e. all factors relating to time) • Ordering and sequence of events, defined by protocols • Rate and duration of events, defining performance • Where are the communicating agents? • Locality and connectivity • Spatial aspects of communication • Why: • Perhaps the most interesting question • Can identify positive (and negative) effects on human interaction • Buried Infrastructure versus User Services
How? (or, what problems must we solve?) • How: • Overcoming the problems posed by communication systems • Identifying each entity • Finding a route between communicating entities • Coping with distance and delays (a.k.a. latency) • Immunity to noise and transmission errors • Requires rules to connect different computer systems • Requires a communications architecture • Hardware transmits bits • Entities exchange Content (data with an agreed interpretation) • Key concept is that of a protocol • Usually based on internationally-agreed standards • Conformance to standards enables diverse systems to interact reliably • Think of an example where lack of standardisation causes problems…
Data, Information and Knowledge • Other courses are concerned with the use of information • We just move it • Don’t care how it is interpreted by communicating entities • When does data becomes information ? • When does information becomes knowledge? • We don’t care • Being uncommitted we just refer to what is transmitted as information • Information theory does have an impact though • In this course we are most concerned with: • Questions of When and Where: • Informing us about correctness, delay, throughput, security and cost • and How: • I.e. definitions of the required protocols
Communication is Everywhere • Fundamental requirement of most systems: • Machines, computers in our case • Biological systems: • Information, emotions, cooperative processes … • Examples (not computers): • Local - sounds (mouth), signs (body, writing) • Wider area - sounds (drumming), signs (smoke, electronic beacons) • Persistent – language, writing, painting
Protocols • This is the key concept. • A protocol is a collection of agreed rules that allows the sharing of control and information between two or more entities • The entities in our case are computers • Concepts we shall discuss hold for entities in any system • A protocol is the enabling mechanism – it must: • Identify the communicating entities • Define how a channel is established • Define how data is encapsulated and-or encrypted • Break large messages into manageable chunks • Deal with transmission errors (detect and-or correct) • Define a flow-control mechanism • Define how a channel is relinquished • Consider snail-mail from each of these protocol perspectives . . .
Use of protocols • Consider these statements: • Computers use protocols so that system components can be used to control and manipulate information • Governments use protocols so that information can be used to control and manipulate people, other governments and the media • Spend some time thinking about protocols for communication • Make a list of all the communication protocols you are aware of, and identify their intended use: • HTTP is an obvious example • What about email, remote login, file services? • Try to describe other protocols you may be aware of that are not intended specifically for computer communications, e.g. • Diplomacy, interacting with strangers/friends/family,… • Organising a formal meeting, writing a formal letter, voting…
Communications is Evolving Rapidly • A most exciting field right now: • Many and varied opportunities • Rapidly expanding technology and market • Email, Internet, mobile phones,… • Integration of mobile phone, PDA and DVB devices • Interoperability of cellular and WiFi networking • Mobility of communicating entities has profound effect • Opens new opportunities • Mobile voice, image, video, networking • New products and services; new markets and societal evolution • Immobile wireless communications is also extremely important • Reduced installation costs • Pervasive networked appliances • Emergence of WiMAX in 2006-07
Keeping up with Developments • Recommended reading for the course includes: • Mainstream, business and computing press carry items each day with some communications content • If you don’t understand the references, keep them to the end of the course when they might make sense to you • Follow the online lecture log at: http://www.inf.ed.ac.uk/teaching/courses/com/log.html • It will often contain web links to further information
Communications past and future • Past: • We need to look at some of the history of communications in this course to set context • And to understand developments • Future: • We’ll be looking at some emerging technologies • This is also the function of the Inf4 Computer Networking module
Computer communication is error-prone… Sometimes humans have similar problems "I think if you know what you believe, it makes it a lot easier toanswer questions … I can't answer your question." —In response to a question about whether he wished he could take back any of his answers in the first debate. Reynoldsburg, Ohio, Oct. 4, 2000 Discussion point for this week • First of weekly suggestions usually suitable for group discussions: • Look out for different examples of computer communications in your everyday life • You’ll probably find some you had not thought of as such • Some may not seem necessary – are they? • Some may be necessary but missing at present
Next time • Next two lectures cover: • Ways in which computer communications affects everyday life • Review of communications media • Impact of computer systems • Some basic Information Theory