Course Description:
This course has been designed to introduce the concepts of basic computer communications and to make students aware of how networks (and specifically the Internet) functions today. The course offers students a variety of topics on data communication including the concept of layering, communication protocol stacks, and network devices and functions.

Course Learning Outcomes:
CLO:1 Describe and express the fundamental concepts of communication protocols and layered network architectures, especially information related to TCP/IP architecture.
CLO:2 Apply concepts of protocol layering to solve problems, and recognize different internetworking devices and their functions within a network.
CLO:3 Categorize network systems using the standard techniques and analyze features, services and operations of various network and transport layer protocols of communications task.

Course Contents:
1. Data Communication and Networking Fundamentals – Four Lectures
• Protocol Architecture
• OSI Reference Model
• The Internet and TCP/IP Protocol Suite

2. Physical Layer – Three Lectures
• Digital Transmission
• Transmission Media

3. Multiplexing – Two Lectures
• Statistical Time Division Multiplexing (STDM)

4. Switching – Two Lectures
• Circuit Switching and Packet Switching
• Virtual Circuit Networks
• Architecture of a Switch

5. Error Detection and Correction Techniques – Two Lectures
• Block Coding
• Hamming Distance
• Cyclic Codes
• Cyclic Redundancy Check
• (CRC) Checksum

6. Data Link Control – Two Lectures
• Framing, Flow Control and Error Control
• Stop-and-Wait, Go-Back-n and Selective Repeat ARQ

7. Multiple Access Techniques – Two Lectures
• Random Access Techniques
• ALOHA,CSMA,CSMA/CD,CSMA/ Controlled Access Techniques

8. Ethernet – Two Lectures

9. Wireless Lans- Two Lectures

10. Connecting Devices – One Lecture

11. Network Layer Logical Addressing – Three Lectures
• IPv4Addressing
• Subnetting, Supernetting and NAT
• IPv6Addressing

12. Internet Protocol (IP) – Three Lectures

13. Internetwork Operation – Two Lectures
• Address Mapping and Error Reporting

14. Transport Protocol – One Lecture
• Process-to-process Delivery
• TCP and UDP

15. Introduction to Application Layer Protocols – One Lecture