Study Guide
The following are useful resources (mostly links to free websites) for studying at SIIT, especially my courses on Data Communications, Internet and Security. There are also some resources for graduate (and senior) students conducting research.
Studying in ICT
Steve's Resources
- Material of recent courses is now mainly on ICT Moodle
- Lecture notes and assessment material from my older courses at SIIT
- Steve's Lectures is my YouTube channel containing videos (screencasts) of my lectures
- My homepage includes articles on Linux, networking and security.
SIIT Resources
General Resources
Internet, Communications and Security
The following resources are useful for studying in most of the courses I teach. The focus is on data communications and networking (often I will refer to it as simply networking), Internet technologies, and computer and network security, although other general computer topics are also covered.
Textbooks
Some of the more popular textbooks that cover networking, the Internet and/or security are listed below. Note that most of the textbooks are available from the SIIT Library, and also have online resources (including many of their own links to resources, examples and source code for download, figures and slides, and more). In addition, there are some textbooks available for free online.
- William Stallings, Data and Computer Communications. Pearson - Prentice Hall. A good introductory textbook on data communications, networking and the Internet.
- William Stallings, Cryptography and Network Security. Pearson - Prentice Hall. A good introductory textbook on both theoretical and pratical aspects of computer and Internet security.
- William Stallings and Lawrie Brown, Computer Security. Pearson - Prentice Hall. Wider coverage of computer security concepts and technologies than Cryptography and Network Security, and less theory.
- Behrouz Forouzan, Data Communications and Networking. McGraw Hill. A good introductory textbook on data communications, networking and the Internet.
- Douglas E. Comer, Internetworking With TCP/IP, Volume 1: Principles, Protocols and Architectures. Pearson - Prentice Hall. This contains a lot of details of many Internet protocols, almost acting as a reference manual as opposed to a typical textbook. Hence, although there are better books for learning about networking concepts (e.g. Stallings and Forouzan), this is a good book to find out about details of a specific protocol.
- Douglas E. Comer, Computer Networks and Internets. Pearson - Prentice Hall. This book is more of an introductory textbook than Comer's Internetworking With TCP/IP, however, although it covers a large selection of topics, books by Stallings and Forouzan are better for beginners.
- James F. Kurose and Keith W. Ross, Computer Networking: A Top Down Approach. Pearson - Addison Wesley. Another good introductory textbook to data communications and networking, presented in a different approach to other such as Stallings and Forouzan, by first looking at Internet applications, then down to the details (such as transmission methods) at the end.
- Kaufman, Perlman and Speciner, Network Security: Private Communication in a Public World. Pearson - Prentice Hall. Good coverage of security techniques, and very interesting read - discuss many of the design decisions, both good and bad, for the protocols and algorithms.
- William Stallings, Wireless Communications and Networks. Pearson - Prentice Hall.
- William Stallings, Network Security Essentials. Pearson - Prentice Hall. A shortened version of Cryptography and Network Security, removing a lot of the theory.
- Behrouz Forouzan, Cryptography and Network Security. McGraw Hill.
- Charles Pfleeger and Shari Lawrence Pfleeger, Security in Computing. Pearson - Prentice Hall.
Free Textbooks
The textbooks listed above can normally be purchased in a book store or borrowed from the library. Many of them are updated every few years to cover new technologies and offer additional resources and questions. However for some topics the thoery and concepts have not changed for many years. There are other, usually older textbooks that cover these topics equally well as those listed above. And for a few select books the authors/publishers have made the books free to download as a PDF online. Below are a few free textbooks that I can recommend (other sites such as Wikibooks may also have useful books, but I haven't personally read any books to judge their quality).
- Menezes, van Oorschot and Vanstone, Handbook of Applied Cryptography. CRC Press. Excellent encyclopedia of important theory and algorithms in computer security. All chapters can be freely downloaded from the website. Chapters 1 and 2 provide a clear treatment of the theory.
- Ross Anderson, Security Engineering. Wiley. Around 1000 pages covering real security issues and technologies. Not limited to computer or network security, it also covers pschology, economics, political and legal issues in depth. Not as much theory as other books, and relatively good to read if you have some basic knowledge of security. All chapters can be freely downloaded from the website.
- Design and Validation of Computer Protocols by Gerard Holzmann. The first two chapters are recommended reading for a quick and easy introduction to what are protocols. The third and fourth chapters are useful for understanding two basic protocol mechanisms: error control and flow control. This entire book is available for free online as a PDF.
- Cooper, Introduction to Queuing Theory. Macmillan, 1972. Second Edition, North-Holland (Elsevier), 1981. Although it is a scanned PDF of the book, this book does provide a good introduction to queuing systems and theory. There is also a solutions manual.
- Zukerman, Introduction to Queueing Theory and Stochastic Teletraffic Models. Moshe's class notes that he turned into a rather complete book on probability and queuing theory (PDF).
Many computing and networking companies have technical descriptions of protocols and systems on their website for free. Some good examples are: Microsoft, Cisco Systems, IBM, Intel and other large companies. Unfortunately most don't have an easy to find table of contents for such documents, so searching (either via their site or via a generic search engine) is the best way to find these resources. Below are some that may be useful:
Standards
Most of the protocols and algorithms used in computer communications and networking are standards, usually created by international or national standards organisations (although some are created by companies or consortiums). The standards are good as a reference for the detailed information about protocols and algorithms.
- Internet Engineering Task Force (IETF). The main source of Internet standards, they publish Request For Comments (RFCs) describing protocols, recommended practice and languages. All of the RFCs are publicly available from the IETF, the RFC Editor or many other mirror sites.
- Institute of Electrical and Electronic Engineers (IEEE). Produce standards for LANs, MANs and WANs, such as Ethernet (IEEE 802.3), Wireless LAN (IEEE 802.11) and Firewire (IEEE 1394). Not all standards are free, but you can download most of the relevant (802) standards for free via GetIEEE802.
- International Telecommunications Union (ITU). Standardise telecommunication systems, ranging from traditional public switched telephone networks (e.g. landlines) to data networks (e.g. ISDN) to multimedia systems (e.g. H.323).
- International Organisation for Standardisation (ISO). Developed the OSI architecture and related protocols, as well as many other computing and electronic standards. Many of the relevant networking standards are developed jointly with the International Electrotechnical Commission (IEC).
- World Wide Web Consortium (W3C). Produces freely available standards for web applications such as HTML, XML, URI, PNG, etc.
- Thai Industrial Standards Institute (TISI). Participates in ISO and other international standards organisations as well as developing local Thai standards.
- National Institute of Standards and Technology (NIST). Develops and promotes standards in the US.
Terminology, Abbreviations and Acronyms
There are many acronyms, words and abbreviations used to describe protocols, concepts, algorithms and organisations in computing, and in particular in networking and security. There are various online references that can help you understand what these mean:
The standards organisations are the primary source of information on protocols, however there are some websites that provide useful summaries of networking protocols and algorithms:
There are many online references for most programming languages and development tools. Here are some useful starters:
- Programming resources for beginners, including HTML, CSS, Javascript, Python and PHP.
- C: GNU C Manual | GNU C Libraries
- Shells: Bash Reference | Advanced Bash Scripting
- Web technologies: W3Schools has coverage, including tutorials and reference manuals, for most web technologies including: HTML, CSS, JavaScript, XML, and PHP.
Research
Technical and Research Papers
If you need to find research papers (remember, most journals and magazines publish introductory or tutorial papers on topics), then you can access the online databases of major technical publishers via the SIIT Library. Some of the most used organisations/databases that provide full-text (PDF) of papers are:
Reading and Writing Papers
Other peoples guides on reading and writing research papers:
Style Guides and Templates
Return to: Course List | Steven Gordon's Home | SIIT