BSc in Computer Science / Бакалавр в Області Комп'ютерних Наук

Course Details

Course Information Package

Course Unit TitleCOMPUTER NETWORKS II
Course Unit CodeACOE323
Course Unit Details
Number of ECTS credits allocated5
Learning Outcomes of the course unitBy the end of the course, the students should be able to:
  1. Use simple quantitative models for end-to-end throughput and delay that take into account transmission, propagation and queuing delays.
  2. Identify, explain and analyze the principles for reliable data transfer.
  3. Illustrate how congestion occurs, its effects and mechanisms to control it.
  4. Describe the properties of dynamic routing algorithms, analyze the operation of the dynamic routing algorithms, illustrate the operation of interior and exterior routing protocols, and justify the need for hierarchical routing.
  5. Develop client-server models with the aid of socket programming.
  6. Identify and illustrate the key concepts in wireless and mobile networked environments.
  7. Provide solutions to protect organizational networks from attacks.
  8. Design and evaluate computer networks, and illustrate the behaviour of Internet protocols and applications with the aid of computer simulations/packet analysis software.
Mode of DeliveryFace-to-face
PrerequisitesACOE313Co-requisitesNONE
Recommended optional program componentsNONE
Course Contents

Computer Networks and the Internet: Delay, loss, and Throughput in packet-switched networks (Overview of delay, Queuing delay and packet loss, End-to-end delay, Throughput in computer networks). Non-persistent and persistent connections. Networks under attack.

Reliable Data Transfer: Multiplexing and demultiplexing. Principles of reliable data transfer (Pipelined reliable data transfer protocols, Go-Back-N, Selective Repeat). Round-trip time estimation and timeout. Principles of congestion control (The causes and the costs of congestion, Approaches to congestion control). TCP congestion control.

Routing: Virtual circuit and datagram networks. What’s inside a router (Input ports, Switching fabric, Output ports, Where does queuing occur). Routing algorithms (The link-state routing algorithm, The distance-vector routing algorithm, Hierarchical routing). Routing in the Internet (Intra-AS routing: RIP, OSPF, Inter-AS routing: BGP). Broadcast and multicast routing. IPv6.

Socket Programming: Socket definition. Ports. Port numbers assignment. Socket domain families. Socket types. Client/Server TCP connection. Basic server functions. Basic client functions. Byte-order transformations. Socket descriptors. Socket creation. Socket address formats, Associating addresses with sockets. Listening to incoming connection requests. Accepting incoming connection requests. Connection establishment. Data transfer. Closing the connection. IP address conversions. More miscellaneous functions. Client/Server Example.

Wireless and Mobile Networks: Wireless links and network characteristics (CDMA). WiFi: 802.11 Wireless LANs. Bluetooth and WiMAX. Mobility management principles (Addressing, Routing to a mobile node). Mobile IP. Wireless and mobility: Impact on higher-layer protocols.

Security in Computer Networks: What is network security. Principles of cryptography (Symmetric key cryptography, Public key encryption). Message integrity (Digital signatures). End-point authentication. Securing email. Securing TCP connections: SSL. Network-layer security: IPSec. Securing wireless LANs (IEEE 802.11i). Operational Security (Firewalls, Intrusion detection systems).

Laboratory Work/Homework: Perform comparisons and evaluate performance of various issues in computer networks through supervised and/or unsupervised laboratory exercises/homework, using computer simulations and/or packet analysis software (The familiarization of computer network simulators and/or packet analysis software has been gained through the ACOE313 course). 

Recommended and/or required reading:
Textbooks
  • J.F. Kurose and K.W. Ross, Computer Networking: A Top-Down Approach Featuring the Internet, Addison-Wesley, 5th Ed., 2010
References
  • W. Stallings, Computer Networking with Internet Protocols and Technology, Prentice Hall, 2004
  • Andrew S. Tanenbaum, Computer Networks, Prentice Hall, 4th Ed., 2003
Planned learning activities and teaching methods

Students are taught the course through lectures by means of computer presentations. Lectures are supplemented with supervised and/or unsupervised computer laboratory/homework where students apply their gained knowledge and identify the principles taught in the lecture sessions.

Lecture/Laboratory notes and presentations are available through the web for students to use in combination with the textbooks.
Assessment methods and criteria
Lab Assignments/Homework20%
Tests20%
Final Exam60%
Language of instructionEnglish
Work placement(s)NO

 Друк  E-mail