\setcounter{numTAs}{0} \setcounter{totalSections}{2} \def\secNum{{"001","DL1",""}} \def\tenSchFileName{{"ECE7428-Sum21_Schedule.pdf","",""}} \def\classTime{{"Thu 3:00 - 5:30 pm","Thu 3:00 - 5:30 pm",""}} \def\classRm{{"Drosdick 305","ONLINE-SYN",""}} \def\classLive{{"","https://villanova.zoom.us/j/98864234907",""}} \def\classInstructor{{"Dr. Sarvesh Kulkarni","Dr. Sarvesh Kulkarni",""}} \def\classInstrContact{{"https://www1.villanova.edu/university/engineering/academic-programs/electrical-computer/directory/biodetail.html?mail=sarvesh.kulkarni@villanova.edu&xsl=bio_long","https://www1.villanova.edu/university/engineering/academic-programs/electrical-computer/directory/biodetail.html?mail=sarvesh.kulkarni@villanova.edu&xsl=bio_long",""}} \def\classInstrOffHrs{{"MW 11:30 am - 1:00 pm, Thu 5:30 pm - 6:30 pm (after class)","MW 11:30 am - 1:00 pm, Thu 5:30 pm - 6:30 pm (after class)",""}} \def\classInstrLive{{"https://villanova.zoom.us/j/92892878084","https://villanova.zoom.us/j/92892878084",""}} \def\TA{{{""},{""},{""}}} \def\TAEmail{{{""},{""},{""}}} \def\TAOffHrs{{{""},{""},{""}}} \def\TARoom{{{""},{""},{""}}} \newcommand\semester{Spring 2026} \newcommand\rsemester{202630} \newcommand\courseNum{ECE 7428} \newcommand\courseName{Computer Communication Networks} \newcommand\courseCoordinator{Dr. Sarvesh Kulkarni} \newcommand\credits{3} \newcommand\contactHrs{3} \newcommand\lecture{1} \newcommand\lab{0} \newcommand\undergradCourse{0} \newcommand\isFreshmanCourse{0} \newcommand\isCustomElecPolicy{0} \newcommand\AIPolicyExists{1} \newcommand\isClassLive{1} \newcommand\isLabLive{0} \newcommand\meetingMiscExists{1} \newcommand\isClassInstrLive{1} \newcommand\isLabInstrLive{0} \newcommand\instrMiscExists{1} \newcommand\hasTARoom{0} \newcommand\meetingDesc{(One 2.5 hr lecture per week)} \newcommand\meetingMisc{One break of approx. 10 mins provided in each lecture} \newcommand\instructorMisc{I will be in my office physically during office hours, but the Zoom meeting for office hours will not be started unless you make an appointment first.} \newcommand\textBookExists{1} \newcommand\textBookReqd{1} \newcommand\textBookMiscExists{1} \newcommand\referencesExist{0} \newcommand\txtBkAuthExists{1} \newcommand\txtBkPublExists{0} \newcommand\txtBkYrExists{1} \newcommand\txtBkISBNExists{0} \newcommand\textBookTitle{An Introduction to Computer Networks, ver. 2.0.11} \newcommand\textBookAuth{Peter L. Dordal} \newcommand\textBookPub{} \newcommand\textBookYr{July 2023} \newcommand\textBookISBN{} \newcommand\supplMaterials{Class slides \& notes posted on Blackboard} \newcommand\refPapers{References go here, if specified} \newcommand\textBookMisc{Get a free copy of the textbook here: \textcolor{blue}{\href{http://intronetworks.cs.luc.edu/}{http://intronetworks.cs.luc.edu/}}. This is an open source textbook and has been released under the \textit{Creative Commons} license. Be sure to respect the terms of the license posted here: \textcolor{blue}{\href{https://creativecommons.org/licenses/by-nc-nd/3.0/}{https://creativecommons.org/licenses/by-nc-nd/3.0/}}.} \newcommand\catalogDesc{Brief Review of ISO/OSI, TCP/IP reference models; TCP details: state machine, timers, optimizations, performance implications, congestion control, socket programming; queuing disciplines, QoS; IEEE 802.11, Bluetooth; Voice Over IP; Layer 7 switching: peer-peer and content distribution networks. Prerequisite: ECE 4470, or equivalent.} \newcommand\preReqs{None} \newcommand\coReqs{None} \newcommand\coreRequirement{Required for MS CPE, Elective for MS Cybersecurity} \newcommand\courseExpectation{At the conclusion of this course, students are expected to acquire a broad understanding and insights into: fundamental concepts in network architectures and higher-level protocol design; performance implications of design decisions in TCP transport; performance analysis using ``queuing theory'' and its application; contention-based wireless networks (such as IEEE 802.11); layer 7 switching and its applications in CDNs and p2p networks; socket programming for communication between application processes on two distinct hosts.} \newcommand\ABETOutOneA{0} \newcommand\ABETOutOneB{0} \newcommand\ABETOutTwoA{0} \newcommand\ABETOutTwoB{0} \newcommand\ABETOutTwoC{0} \newcommand\ABETOutTwoD{0} \newcommand\ABETOutThree{0} \newcommand\ABETOutFourA{0} \newcommand\ABETOutFourB{0} \newcommand\ABETOutFourC{0} \newcommand\ABETOutFive{0} \newcommand\ABETOutSixA{0} \newcommand\ABETOutSixB{0} \newcommand\ABETOutSevenA{0} \newcommand\ABETOutSevenB{0} \newcommand\covTopics{\item Review of the ISO-OSI and the TCP/IP reference models for computer networks. \item TCP: ports and usage, general operation, sliding windows, state machine, timer algorithms, flavors (variations), flow \& congestion control, performance \& behavioral characteristics, complications in wireless environments. \item App communication: Socket programming (TCP, UDP). \item Quality of Service (QoS): Traffic shaping \& policing, queuing disciplines (schemes) for fairness, performance \& prioritization; elements of INTSERV and DIFFSERV protocols. \item Performance Analysis: The theory of queues as applied to networks and \item Wireless Networking: Common problems on shared channels, their solutions and application in the IEEE 802.11 protocol. \item Overlay Networks: Layer 7 switching/routing, p2p systems (Gnutella, Pastry and Bit-torrents), and Content Distribution Networks (CDNs).} \newcommand\isScheduleExternal{0} \newcommand\isScheduleCommon{1} \newcommand\scheduleRows{18} \newcommand\scheduleCols{3} \newcommand\scheduleHeight{1} \newcommand\schedule{\begin{table}[h!] \centering \caption*{Tentative Schedule for \textbf{All Sections}} \vspace{0.05in} {\renewcommand{\arraystretch}{1.5} \small \begin{tabularx}{\linewidth}{c|l|X} \toprule \large \textbf{Week\#} & \large \textbf{Dates} & \large \textbf{Topics of Study}\\ \midrule \midrule 1 & 1/15 & Introductions, syllabus/policy discussion, review of networking concepts\\ 2 & 1/22 & Review of networking concepts (contd.), TCP Basics: stream data service, concepts in congestion, ports, segment format\\ 3 & 1/29 & TCP internals: connection management, state machine, window management incl.\ flow \& congestion control\\ 4 & 2/5 & TCP internals: quirks, timer management, Berkley sockets\\ 5 & 2/12 & TCP internals: window management, congestion control \\ 6 & 2/19 & TCP supplementary topics: wireless environments, protocol design rules\\ 7 & 2/26 & IEEE 802.11 wireless networks\\ 8 & 3/5 & \textbf{Spring Break: no class, no deliverables due}\\ 9 & 3/12 & \textcolor{red}{Midterm Exam}\\ 10 & 3/19 & IEEE 802.11 contd.; Performance analysis: introduction\\ 11 & 3/26 & Performance analysis \& the theory of queues, performance modeling\\ 12 & 4/2 & \textbf{Easter Break: no class}\\ 13 & 4/9 & Performance analysis \& the theory of queues (contd.), solved problems\\ 14 & 4/16 & Queuing disciplines, packet scheduling; QoS concepts: load models\\ 15 & 4/23 & QoS concepts: admission control, traffic shaping \& policing, RED algorithms\\ 16 & 4/30 & QoS architectures in brief; Overlay networks: concepts, protocols, applications in p2p networks and CDNs\\ 17 & 5/7 & \textcolor{red}{Final Exam}\\ \bottomrule \end{tabularx} } \end{table}} \newcommand\gradingPolicy{\noindent A composite score (out of 100) will be computed by assigning weightages as follows. HW: 20\% weightage Project: 25\% weightage %%Survey paper: 20\% weightage Mid-term exam: 25\% weightage\ Final Exam (non-comprehensive): 30\% weightage \noindent The final grading curve uses composite scores and will reflect a class average of \textit{B}. Regardless of the grading curve, a student with a composite score of 90+ will be awarded an \textit{A} grade while a student with a composite score of less than 50 will be awarded an \textit{F} grade.} \newcommand\HWandLabPolicy{HW assignments and project deliverables should be uploaded to the \textcolor{blue}{\href{http://elearning.villanova.edu}{Blackboard}} e-learning site before the due date/time, or handed-in during class hours. Late submissions will be assessed a 10\% penalty per day, up to the cut-off date (usually three days later). After the cut-off date, assignments/projects WILL NOT be accepted. Questions in the exams will be based on the material taught in class, class discussions and homework assignments.} \newcommand\AIPolicy{The use of AI-generated textual content, mathematical analyses or program code is NOT permitted in this course. If questions arise about the authorship of your work, you may be asked to verify your authorship by either submitting to an oral examination/assessment by the instructor, or by submitting evidence of your work in the form of drafts, notes and version histories.} \newcommand\AttendancePolicy{} \newcommand\ElectronicsPolicy{\textcolor{red}{Since you opted for a customize electronics policy, you should edit this part. Your policy should address your general stance on recording of class sessions and the circumstances under which recording will be allowed or prohibited. If you generally prohibit recording, yet allow recording of certain classes for some reason, then ypu should notify all students that those classes will be recorded. If recording is permitted as an ADA accommodation for a student, you obviously should not identify that student(s).)}}